summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/Makemodule.am20
-rw-r--r--tests/commands.sh64
-rw-r--r--tests/expected/bitops/swapbytes21
-rw-r--r--tests/expected/blkid/low-probe-adaptec-raid3
-rw-r--r--tests/expected/blkid/low-probe-befs7
-rw-r--r--tests/expected/blkid/low-probe-bfs2
-rw-r--r--tests/expected/blkid/low-probe-cramfs4
-rw-r--r--tests/expected/blkid/low-probe-ddf-raid5
-rw-r--r--tests/expected/blkid/low-probe-exfat7
-rw-r--r--tests/expected/blkid/low-probe-ext27
-rw-r--r--tests/expected/blkid/low-probe-ext38
-rw-r--r--tests/expected/blkid/low-probe-fat8
-rw-r--r--tests/expected/blkid/low-probe-fat16_noheads8
-rw-r--r--tests/expected/blkid/low-probe-fat32_label_64MB7
-rw-r--r--tests/expected/blkid/low-probe-gfs25
-rw-r--r--tests/expected/blkid/low-probe-hfs4
-rw-r--r--tests/expected/blkid/low-probe-hfsplus4
-rw-r--r--tests/expected/blkid/low-probe-hpfs7
-rw-r--r--tests/expected/blkid/low-probe-hpt37x-raid2
-rw-r--r--tests/expected/blkid/low-probe-hpt45x-raid2
-rw-r--r--tests/expected/blkid/low-probe-iso6
-rw-r--r--tests/expected/blkid/low-probe-iso-joliet7
-rw-r--r--tests/expected/blkid/low-probe-iso-rr-joliet7
-rw-r--r--tests/expected/blkid/low-probe-isw-raid3
-rw-r--r--tests/expected/blkid/low-probe-jbd5
-rw-r--r--tests/expected/blkid/low-probe-jfs6
-rw-r--r--tests/expected/blkid/low-probe-jmicron-raid3
-rw-r--r--tests/expected/blkid/low-probe-lsi-raid2
-rw-r--r--tests/expected/blkid/low-probe-lvm25
-rw-r--r--tests/expected/blkid/low-probe-mdraid5
-rw-r--r--tests/expected/blkid/low-probe-minix3
-rw-r--r--tests/expected/blkid/low-probe-netware5
-rw-r--r--tests/expected/blkid/low-probe-nilfs27
-rw-r--r--tests/expected/blkid/low-probe-ntfs6
-rw-r--r--tests/expected/blkid/low-probe-nvidia-raid3
-rw-r--r--tests/expected/blkid/low-probe-ocfs27
-rw-r--r--tests/expected/blkid/low-probe-promise-raid2
-rw-r--r--tests/expected/blkid/low-probe-reiser37
-rw-r--r--tests/expected/blkid/low-probe-reiser47
-rw-r--r--tests/expected/blkid/low-probe-romfs4
-rw-r--r--tests/expected/blkid/low-probe-silicon-raid3
-rw-r--r--tests/expected/blkid/low-probe-small-fat327
-rw-r--r--tests/expected/blkid/low-probe-swap03
-rw-r--r--tests/expected/blkid/low-probe-swap17
-rw-r--r--tests/expected/blkid/low-probe-tuxonice5
-rw-r--r--tests/expected/blkid/low-probe-ubifs5
-rw-r--r--tests/expected/blkid/low-probe-udf4
-rw-r--r--tests/expected/blkid/low-probe-ufs5
-rw-r--r--tests/expected/blkid/low-probe-via-raid3
-rw-r--r--tests/expected/blkid/low-probe-vmfs7
-rw-r--r--tests/expected/blkid/low-probe-vmfs_volume7
-rw-r--r--tests/expected/blkid/low-probe-xfs6
-rw-r--r--tests/expected/blkid/low-probe-zfs9
-rw-r--r--tests/expected/blkid/lowprobe-pt-bsd4
-rw-r--r--tests/expected/blkid/lowprobe-pt-dos+bsd6
-rw-r--r--tests/expected/blkid/lowprobe-pt-gpt7
-rw-r--r--tests/expected/blkid/lowprobe-pt-sgi4
-rw-r--r--tests/expected/blkid/lowprobe-pt-sun4
-rw-r--r--tests/expected/blkid/md-raid0-whole53
-rw-r--r--tests/expected/blkid/md-raid1-part64
-rw-r--r--tests/expected/blkid/md-raid1-whole52
-rw-r--r--tests/expected/build-sys/config0
-rw-r--r--tests/expected/build-sys/config-all111
-rw-r--r--tests/expected/build-sys/config-all-devel120
-rw-r--r--tests/expected/build-sys/config-all-non-nls111
-rw-r--r--tests/expected/build-sys/config-audit94
-rw-r--r--tests/expected/build-sys/config-core94
-rw-r--r--tests/expected/build-sys/config-devel111
-rw-r--r--tests/expected/build-sys/config-devel-new-mount127
-rw-r--r--tests/expected/build-sys/config-non-libblkid75
-rw-r--r--tests/expected/build-sys/config-non-libmount84
-rw-r--r--tests/expected/build-sys/config-non-libs72
-rw-r--r--tests/expected/build-sys/config-non-libuuid91
-rw-r--r--tests/expected/build-sys/config-non-nls94
-rw-r--r--tests/expected/build-sys/config-old-mount94
-rw-r--r--tests/expected/build-sys/config-selinux94
-rw-r--r--tests/expected/build-sys/config-slang94
-rw-r--r--tests/expected/build-sys/config-static100
-rw-r--r--tests/expected/cal/1m37
-rw-r--r--tests/expected/cal/3m37
-rw-r--r--tests/expected/cal/year177
-rw-r--r--tests/expected/col/multibyte1
-rw-r--r--tests/expected/colrm/rm2-23
-rw-r--r--tests/expected/column/fillrow4
-rw-r--r--tests/expected/column/multi-file10
-rw-r--r--tests/expected/column/separator_table10
-rw-r--r--tests/expected/cramfs/doubles3
-rw-r--r--tests/expected/cramfs/fsck-endianness8
-rw-r--r--tests/expected/cramfs/mkfs4125
-rw-r--r--tests/expected/cramfs/mkfs-endianness4
-rw-r--r--tests/expected/eject/umount0
-rw-r--r--tests/expected/eject/umount-by-disk1
-rw-r--r--tests/expected/eject/umount-by-disk-mounted1
-rw-r--r--tests/expected/eject/umount-by-disk-mounted-partition2
-rw-r--r--tests/expected/eject/umount-by-partition2
-rw-r--r--tests/expected/eject/umount-by-partition-mounted2
-rw-r--r--tests/expected/fdisk/align-512-4K83
-rw-r--r--tests/expected/fdisk/align-512-4K-6384
-rw-r--r--tests/expected/fdisk/align-512-4K-md87
-rw-r--r--tests/expected/fdisk/align-512-4K-topology78
-rw-r--r--tests/expected/fdisk/align-512-51268
-rw-r--r--tests/expected/fdisk/align-512-512-topology79
-rw-r--r--tests/expected/fdisk/id5
-rw-r--r--tests/expected/fdisk/mbr-dos-mode182
-rw-r--r--tests/expected/fdisk/mbr-nondos-mode195
-rw-r--r--tests/expected/fdisk/oddinput14
-rw-r--r--tests/expected/fdisk/oddinput.toosmall1
-rw-r--r--tests/expected/fdisk/sunlabel16
-rw-r--r--tests/expected/fsck/ismounted1
-rw-r--r--tests/expected/ipcs/headers64
-rw-r--r--tests/expected/ipcs/limits11
-rw-r--r--tests/expected/ipcs/limits24
-rw-r--r--tests/expected/libmount/context5
-rw-r--r--tests/expected/libmount/context-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-mount-by-label1
-rw-r--r--tests/expected/libmount/context-mount-by-uuid2
-rw-r--r--tests/expected/libmount/context-mount-flags5
-rw-r--r--tests/expected/libmount/context-mount-loopdev2
-rw-r--r--tests/expected/libmount/context-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-umount-by-mountpoint1
-rw-r--r--tests/expected/libmount/context-utab9
-rw-r--r--tests/expected/libmount/context-utab-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-mount-uhelper1
-rw-r--r--tests/expected/libmount/context-utab-mount-uhelper-subvol1
-rw-r--r--tests/expected/libmount/context-utab-umount1
-rw-r--r--tests/expected/libmount/context-utab-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-umount-subvol1
-rw-r--r--tests/expected/libmount/lock1
-rw-r--r--tests/expected/libmount/optstr-append1
-rw-r--r--tests/expected/libmount/optstr-append-value1
-rw-r--r--tests/expected/libmount/optstr-apply-linux2
-rw-r--r--tests/expected/libmount/optstr-apply-user2
-rw-r--r--tests/expected/libmount/optstr-deduplicate1
-rw-r--r--tests/expected/libmount/optstr-fix2
-rw-r--r--tests/expected/libmount/optstr-flags2
-rw-r--r--tests/expected/libmount/optstr-get1
-rw-r--r--tests/expected/libmount/optstr-get-value1
-rw-r--r--tests/expected/libmount/optstr-prepend1
-rw-r--r--tests/expected/libmount/optstr-prepend-value1
-rw-r--r--tests/expected/libmount/optstr-remove1
-rw-r--r--tests/expected/libmount/optstr-remove-quoted1
-rw-r--r--tests/expected/libmount/optstr-remove-value1
-rw-r--r--tests/expected/libmount/optstr-set-large1
-rw-r--r--tests/expected/libmount/optstr-set-new1
-rw-r--r--tests/expected/libmount/optstr-set-new-end1
-rw-r--r--tests/expected/libmount/optstr-set-remove1
-rw-r--r--tests/expected/libmount/optstr-set-small1
-rw-r--r--tests/expected/libmount/optstr-split3
-rw-r--r--tests/expected/libmount/tabdiff0
-rw-r--r--tests/expected/libmount/tabdiff-mount1
-rw-r--r--tests/expected/libmount/tabdiff-move1
-rw-r--r--tests/expected/libmount/tabdiff-remount2
-rw-r--r--tests/expected/libmount/tabdiff-umount1
-rw-r--r--tests/expected/libmount/tabfiles-copy18
-rw-r--r--tests/expected/libmount/tabfiles-find-pair6
-rw-r--r--tests/expected/libmount/tabfiles-find-source8
-rw-r--r--tests/expected/libmount/tabfiles-find-target6
-rw-r--r--tests/expected/libmount/tabfiles-find-target25
-rw-r--r--tests/expected/libmount/tabfiles-find-target35
-rw-r--r--tests/expected/libmount/tabfiles-parse-fstab65
-rw-r--r--tests/expected/libmount/tabfiles-parse-fstab-broken63
-rw-r--r--tests/expected/libmount/tabfiles-parse-mountinfo352
-rw-r--r--tests/expected/libmount/tabfiles-parse-mtab68
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-dev2label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label2dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label2uuid5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-uuid5
-rw-r--r--tests/expected/libmount/update-fstab-add3
-rw-r--r--tests/expected/libmount/update-mtab-mount5
-rw-r--r--tests/expected/libmount/update-mtab-move5
-rw-r--r--tests/expected/libmount/update-mtab-remount5
-rw-r--r--tests/expected/libmount/update-mtab-umount2
-rw-r--r--tests/expected/libmount/update-utab-mount3
-rw-r--r--tests/expected/libmount/update-utab-move3
-rw-r--r--tests/expected/libmount/update-utab-remount3
-rw-r--r--tests/expected/libmount/update-utab-umount1
-rw-r--r--tests/expected/libmount/utils-ends-with1
-rw-r--r--tests/expected/libmount/utils-fs-root1
-rw-r--r--tests/expected/libmount/utils-fs-root-subdir1
-rw-r--r--tests/expected/libmount/utils-fs-root-subdir21
-rw-r--r--tests/expected/libmount/utils-match-fstype1
-rw-r--r--tests/expected/libmount/utils-match-fstype-neg1
-rw-r--r--tests/expected/libmount/utils-match-fstype-neg21
-rw-r--r--tests/expected/libmount/utils-match-options1
-rw-r--r--tests/expected/libmount/utils-match-options-list1
-rw-r--r--tests/expected/libmount/utils-match-options-neg1
-rw-r--r--tests/expected/libmount/utils-match-options-neg-list1
-rw-r--r--tests/expected/libmount/utils-match-options-neg-list21
-rw-r--r--tests/expected/libmount/utils-mountpoint1
-rw-r--r--tests/expected/libmount/utils-mountpoint-root1
-rw-r--r--tests/expected/libmount/utils-mountpoint-subdir1
-rw-r--r--tests/expected/libmount/utils-starts-with1
-rw-r--r--tests/expected/login/islocal13
-rw-r--r--tests/expected/login/logindefs14
-rw-r--r--tests/expected/look/separator1
-rw-r--r--tests/expected/lscpu/lscpu-i386-amdshanghai29
-rw-r--r--tests/expected/lscpu/lscpu-i386-dellpe70017
-rw-r--r--tests/expected/lscpu/lscpu-i386-intels5000phb28
-rw-r--r--tests/expected/lscpu/lscpu-i386-xenpara19
-rw-r--r--tests/expected/lscpu/lscpu-ia64-512cpus654
-rw-r--r--tests/expected/lscpu/lscpu-ia64-hpmatterhorn29
-rw-r--r--tests/expected/lscpu/lscpu-ia64-hprx162021
-rw-r--r--tests/expected/lscpu/lscpu-ia64-pg037
-rw-r--r--tests/expected/lscpu/lscpu-ppc64-POWER731
-rw-r--r--tests/expected/lscpu/lscpu-s390-kvm21
-rw-r--r--tests/expected/lscpu/lscpu-s390-lpar36
-rw-r--r--tests/expected/lscpu/lscpu-s390-zvm22
-rw-r--r--tests/expected/lscpu/lscpu-sparc64-UltraSparc-T138
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-64cpu88
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-dell_e431028
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-dell_poweredge195023
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-dell_poweredgeR61040
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-dellr71040
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-el5xen30
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-hpdl58542
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-ibme326m23
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-necem1422
-rw-r--r--tests/expected/lscpu/lscpu-x86_64-xenfull22
-rw-r--r--tests/expected/md5/md57
-rw-r--r--tests/expected/minix/fsck8
-rw-r--r--tests/expected/minix/mkfs10
-rw-r--r--tests/expected/misc/strtosize30
-rw-r--r--tests/expected/mount/devname1
-rw-r--r--tests/expected/mount/encryption1
-rw-r--r--tests/expected/mount/fstab-broken1
-rw-r--r--tests/expected/mount/fstab-broken-mount1
-rw-r--r--tests/expected/mount/fstab-broken-mount-all1
-rw-r--r--tests/expected/mount/fstab-devname1
-rw-r--r--tests/expected/mount/fstab-devname2label1
-rw-r--r--tests/expected/mount/fstab-devname2uuid1
-rw-r--r--tests/expected/mount/fstab-label1
-rw-r--r--tests/expected/mount/fstab-label2devname1
-rw-r--r--tests/expected/mount/fstab-label2uuid1
-rw-r--r--tests/expected/mount/fstab-none1
-rw-r--r--tests/expected/mount/fstab-symlink1
-rw-r--r--tests/expected/mount/fstab-uuid1
-rw-r--r--tests/expected/mount/fstab-uuid2devname1
-rw-r--r--tests/expected/mount/fstab-uuid2label1
-rw-r--r--tests/expected/mount/label1
-rw-r--r--tests/expected/mount/move1
-rw-r--r--tests/expected/mount/noncanonical2
-rw-r--r--tests/expected/mount/paths11
-rw-r--r--tests/expected/mount/regfile1
-rw-r--r--tests/expected/mount/remount1
-rw-r--r--tests/expected/mount/rlimit1
-rw-r--r--tests/expected/mount/rlimit-mount1
-rw-r--r--tests/expected/mount/rlimit-umount1
-rw-r--r--tests/expected/mount/shared-subtree1
-rw-r--r--tests/expected/mount/shared-subtree-make-private1
-rw-r--r--tests/expected/mount/shared-subtree-make-shared1
-rw-r--r--tests/expected/mount/shared-subtree-make-unbindable1
-rw-r--r--tests/expected/mount/special1
-rw-r--r--tests/expected/mount/uuid1
-rw-r--r--tests/expected/namei/logic13
-rw-r--r--tests/expected/partx/partx-bsd3
-rw-r--r--tests/expected/partx/partx-dos+bsd5
-rw-r--r--tests/expected/partx/partx-gpt6
-rw-r--r--tests/expected/partx/partx-sgi3
-rw-r--r--tests/expected/partx/partx-sun3
-rw-r--r--tests/expected/paths/built-in35
-rw-r--r--tests/expected/schedutils/cpuset24
-rw-r--r--tests/expected/script/race1
-rw-r--r--tests/expected/swapon/devname1
-rw-r--r--tests/expected/swapon/fixpgsz1
-rw-r--r--tests/expected/swapon/fixsig1
-rw-r--r--tests/expected/swapon/label1
-rw-r--r--tests/expected/swapon/uuid1
-rw-r--r--tests/functions.sh470
-rw-r--r--tests/helpers/Makemodule.am12
-rw-r--r--tests/helpers/test_byteswap.c114
-rw-r--r--tests/helpers/test_md5.c29
-rw-r--r--tests/helpers/test_pathnames.c100
-rw-r--r--tests/helpers/test_sysinfo.c129
-rwxr-xr-xtests/run.sh136
-rwxr-xr-xtests/ts/bitops/swapbytes27
-rw-r--r--tests/ts/blkid/images-fs/adaptec-raid.img.bz2bin0 -> 256 bytes
-rw-r--r--tests/ts/blkid/images-fs/befs.img.bz2bin0 -> 36236 bytes
-rw-r--r--tests/ts/blkid/images-fs/bfs.img.bz2bin0 -> 133 bytes
-rw-r--r--tests/ts/blkid/images-fs/cramfs.img.bz2bin0 -> 124 bytes
-rw-r--r--tests/ts/blkid/images-fs/ddf-raid.img.bz2bin0 -> 599 bytes
-rw-r--r--tests/ts/blkid/images-fs/exfat.img.bz2bin0 -> 6301 bytes
-rw-r--r--tests/ts/blkid/images-fs/ext2.img.bz2bin0 -> 356 bytes
-rw-r--r--tests/ts/blkid/images-fs/ext3.img.bz2bin0 -> 1489 bytes
-rw-r--r--tests/ts/blkid/images-fs/fat.img.bz2bin0 -> 249 bytes
-rw-r--r--tests/ts/blkid/images-fs/fat16_noheads.img.bz2bin0 -> 336 bytes
-rw-r--r--tests/ts/blkid/images-fs/fat32_label_64MB.img.bz2bin0 -> 1151 bytes
-rw-r--r--tests/ts/blkid/images-fs/gfs2.img.bz2bin0 -> 130 bytes
-rw-r--r--tests/ts/blkid/images-fs/hfs.img.bz2bin0 -> 257 bytes
-rw-r--r--tests/ts/blkid/images-fs/hfsplus.img.bz2bin0 -> 300 bytes
-rw-r--r--tests/ts/blkid/images-fs/hpfs.img.bz2bin0 -> 2454 bytes
-rw-r--r--tests/ts/blkid/images-fs/hpt37x-raid.img.bz2bin0 -> 123 bytes
-rw-r--r--tests/ts/blkid/images-fs/hpt45x-raid.img.bz2bin0 -> 151 bytes
-rw-r--r--tests/ts/blkid/images-fs/iso-joliet.img.bz2bin0 -> 21050 bytes
-rw-r--r--tests/ts/blkid/images-fs/iso-rr-joliet.img.bz2bin0 -> 21380 bytes
-rw-r--r--tests/ts/blkid/images-fs/iso.img.bz2bin0 -> 20718 bytes
-rw-r--r--tests/ts/blkid/images-fs/isw-raid.img.bz2bin0 -> 251 bytes
-rw-r--r--tests/ts/blkid/images-fs/jbd.img.bz2bin0 -> 214 bytes
-rw-r--r--tests/ts/blkid/images-fs/jfs.img.bz2bin0 -> 3434 bytes
-rw-r--r--tests/ts/blkid/images-fs/jmicron-raid.img.bz2bin0 -> 159 bytes
-rw-r--r--tests/ts/blkid/images-fs/lsi-raid.img.bz2bin0 -> 146 bytes
-rw-r--r--tests/ts/blkid/images-fs/lvm2.img.bz2bin0 -> 177 bytes
-rw-r--r--tests/ts/blkid/images-fs/mdraid.img.bz2bin0 -> 160 bytes
-rw-r--r--tests/ts/blkid/images-fs/minix.img.bz2bin0 -> 138 bytes
-rw-r--r--tests/ts/blkid/images-fs/netware.img.bz2bin0 -> 239 bytes
-rw-r--r--tests/ts/blkid/images-fs/nilfs2.img.bz2bin0 -> 795 bytes
-rw-r--r--tests/ts/blkid/images-fs/ntfs.img.bz2bin0 -> 35942 bytes
-rw-r--r--tests/ts/blkid/images-fs/nvidia-raid.img.bz2bin0 -> 175 bytes
-rw-r--r--tests/ts/blkid/images-fs/ocfs2.img.bz2bin0 -> 1070 bytes
-rw-r--r--tests/ts/blkid/images-fs/promise-raid.img.bz2bin0 -> 784 bytes
-rw-r--r--tests/ts/blkid/images-fs/reiser3.img.bz2bin0 -> 282 bytes
-rw-r--r--tests/ts/blkid/images-fs/reiser4.img.bz2bin0 -> 372 bytes
-rw-r--r--tests/ts/blkid/images-fs/romfs.img.bz2bin0 -> 115 bytes
-rw-r--r--tests/ts/blkid/images-fs/silicon-raid.img.bz2bin0 -> 328 bytes
-rw-r--r--tests/ts/blkid/images-fs/small-fat32.img.bz2bin0 -> 372 bytes
-rw-r--r--tests/ts/blkid/images-fs/swap0.img.bz2bin0 -> 75 bytes
-rw-r--r--tests/ts/blkid/images-fs/swap1.img.bz2bin0 -> 121 bytes
-rw-r--r--tests/ts/blkid/images-fs/tuxonice.img.bz2bin0 -> 36891 bytes
-rw-r--r--tests/ts/blkid/images-fs/ubifs.img.bz2bin0 -> 937 bytes
-rw-r--r--tests/ts/blkid/images-fs/udf.img.bz2bin0 -> 2031 bytes
-rw-r--r--tests/ts/blkid/images-fs/ufs.img.bz2bin0 -> 1318 bytes
-rw-r--r--tests/ts/blkid/images-fs/via-raid.img.bz2bin0 -> 99 bytes
-rw-r--r--tests/ts/blkid/images-fs/vmfs.img.bz2bin0 -> 144 bytes
-rw-r--r--tests/ts/blkid/images-fs/vmfs_volume.img.bz2bin0 -> 287 bytes
-rw-r--r--tests/ts/blkid/images-fs/xfs.img.bz2bin0 -> 443 bytes
-rw-r--r--tests/ts/blkid/images-fs/zfs.img.bz2bin0 -> 10912 bytes
-rw-r--r--tests/ts/blkid/images-pt/bsd.img.bz2bin0 -> 122 bytes
-rw-r--r--tests/ts/blkid/images-pt/dos+bsd.img.bz2bin0 -> 1728 bytes
-rw-r--r--tests/ts/blkid/images-pt/gpt.img.bz2bin0 -> 494 bytes
-rw-r--r--tests/ts/blkid/images-pt/sgi.img.bz2bin0 -> 144 bytes
-rw-r--r--tests/ts/blkid/images-pt/sun.img.bz2bin0 -> 170 bytes
-rwxr-xr-xtests/ts/blkid/low-probe46
-rwxr-xr-xtests/ts/blkid/lowprobe-pt45
-rwxr-xr-xtests/ts/blkid/md-raid0-whole85
-rwxr-xr-xtests/ts/blkid/md-raid1-part91
-rwxr-xr-xtests/ts/blkid/md-raid1-whole85
-rwxr-xr-xtests/ts/build-sys/config70
-rwxr-xr-xtests/ts/cal/1m59
-rwxr-xr-xtests/ts/cal/3m58
-rwxr-xr-xtests/ts/cal/year58
-rwxr-xr-xtests/ts/col/multibyte27
-rw-r--r--tests/ts/col/multibyte.data1
-rwxr-xr-xtests/ts/colrm/rm2-226
-rwxr-xr-xtests/ts/column/fillrow29
-rw-r--r--tests/ts/column/input10
-rwxr-xr-xtests/ts/column/multi-file32
-rwxr-xr-xtests/ts/column/separator_table29
-rw-r--r--tests/ts/cramfs/cramfs-big.imgbin0 -> 4096 bytes
-rw-r--r--tests/ts/cramfs/cramfs-little.imgbin0 -> 4096 bytes
-rwxr-xr-xtests/ts/cramfs/doubles51
-rwxr-xr-xtests/ts/cramfs/fsck-endianness57
-rwxr-xr-xtests/ts/cramfs/mkfs95
-rwxr-xr-xtests/ts/cramfs/mkfs-endianness53
-rwxr-xr-xtests/ts/eject/umount111
-rwxr-xr-xtests/ts/fdisk/align-512-4K87
-rwxr-xr-xtests/ts/fdisk/align-512-4K-6387
-rwxr-xr-xtests/ts/fdisk/align-512-4K-md99
-rwxr-xr-xtests/ts/fdisk/align-512-51270
-rwxr-xr-xtests/ts/fdisk/align-512-512-topology87
-rwxr-xr-xtests/ts/fdisk/id37
-rwxr-xr-xtests/ts/fdisk/mbr-dos-mode135
-rwxr-xr-xtests/ts/fdisk/mbr-nondos-mode137
-rwxr-xr-xtests/ts/fdisk/oddinput40
-rwxr-xr-xtests/ts/fdisk/sunlabel74
-rwxr-xr-xtests/ts/fsck/ismounted45
-rwxr-xr-xtests/ts/hwclock/systohc58
-rw-r--r--tests/ts/ipcs/functions.sh83
-rwxr-xr-xtests/ts/ipcs/headers58
-rwxr-xr-xtests/ts/ipcs/limits51
-rwxr-xr-xtests/ts/ipcs/limits231
-rwxr-xr-xtests/ts/libmount/context133
-rwxr-xr-xtests/ts/libmount/context-utab125
-rw-r--r--tests/ts/libmount/files/fstab14
-rw-r--r--tests/ts/libmount/files/fstab.broken14
-rw-r--r--tests/ts/libmount/files/mountinfo32
-rw-r--r--tests/ts/libmount/files/mountinfo_mv32
-rw-r--r--tests/ts/libmount/files/mountinfo_re32
-rw-r--r--tests/ts/libmount/files/mountinfo_u31
-rw-r--r--tests/ts/libmount/files/mtab11
-rwxr-xr-xtests/ts/libmount/lock39
-rwxr-xr-xtests/ts/libmount/optstr95
-rwxr-xr-xtests/ts/libmount/tabdiff31
-rwxr-xr-xtests/ts/libmount/tabfiles65
-rwxr-xr-xtests/ts/libmount/tabfiles-tags95
-rwxr-xr-xtests/ts/libmount/update96
-rwxr-xr-xtests/ts/libmount/utils79
-rwxr-xr-xtests/ts/login/islocal27
-rw-r--r--tests/ts/login/islocal.data10
-rwxr-xr-xtests/ts/login/logindefs24
-rw-r--r--tests/ts/login/logindefs.data16
-rwxr-xr-xtests/ts/look/separator39
-rw-r--r--tests/ts/look/words3
-rw-r--r--tests/ts/lscpu/dumps/i386-amdshanghai.tar.gzbin0 -> 3395 bytes
-rw-r--r--tests/ts/lscpu/dumps/i386-dellpe700.tar.gzbin0 -> 799 bytes
-rw-r--r--tests/ts/lscpu/dumps/i386-intels5000phb.tar.gzbin0 -> 2865 bytes
-rw-r--r--tests/ts/lscpu/dumps/ia64-512cpus.tar.gzbin0 -> 67254 bytes
-rw-r--r--tests/ts/lscpu/dumps/ia64-hpmatterhorn.tar.gzbin0 -> 3514 bytes
-rw-r--r--tests/ts/lscpu/dumps/ia64-hprx1620.tar.gzbin0 -> 1384 bytes
-rw-r--r--tests/ts/lscpu/dumps/ia64-pg0.tar.gzbin0 -> 7784 bytes
-rw-r--r--tests/ts/lscpu/dumps/ppc64-POWER7.tar.gzbin0 -> 14350 bytes
-rw-r--r--tests/ts/lscpu/dumps/s390-kvm.tar.gzbin0 -> 2275 bytes
-rw-r--r--tests/ts/lscpu/dumps/s390-lpar.tar.gzbin0 -> 6611 bytes
-rw-r--r--tests/ts/lscpu/dumps/s390-zvm.tar.gzbin0 -> 2582 bytes
-rw-r--r--tests/ts/lscpu/dumps/sparc64-UltraSparc-T1.tar.gzbin0 -> 23071 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-64cpu.tar.gzbin0 -> 153140 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-dell_e4310.tar.gzbin0 -> 12933 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-dell_poweredge1950.tar.gzbin0 -> 1492 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-dell_poweredgeR610.tar.gzbin0 -> 14095 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-dellr710.tar.gzbin0 -> 14300 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-el5xen.tar.gzbin0 -> 7296 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-hpdl585.tar.gzbin0 -> 6910 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-ibme326m.tar.gzbin0 -> 1461 bytes
-rw-r--r--tests/ts/lscpu/dumps/x86_64-necem14.tar.gzbin0 -> 1307 bytes
-rwxr-xr-xtests/ts/lscpu/lscpu50
-rw-r--r--tests/ts/lscpu/mk-input.sh43
-rw-r--r--tests/ts/md5/data7
-rwxr-xr-xtests/ts/md5/md531
-rwxr-xr-xtests/ts/minix/fsck39
-rwxr-xr-xtests/ts/minix/mkfs47
-rwxr-xr-xtests/ts/misc/strtosize60
-rwxr-xr-xtests/ts/mount/devname53
-rwxr-xr-xtests/ts/mount/encryption64
-rwxr-xr-xtests/ts/mount/fstab-broken62
-rwxr-xr-xtests/ts/mount/fstab-devname53
-rwxr-xr-xtests/ts/mount/fstab-devname2label49
-rwxr-xr-xtests/ts/mount/fstab-devname2uuid49
-rwxr-xr-xtests/ts/mount/fstab-label60
-rwxr-xr-xtests/ts/mount/fstab-label2devname55
-rwxr-xr-xtests/ts/mount/fstab-label2uuid60
-rwxr-xr-xtests/ts/mount/fstab-none30
-rwxr-xr-xtests/ts/mount/fstab-symlink68
-rwxr-xr-xtests/ts/mount/fstab-uuid60
-rwxr-xr-xtests/ts/mount/fstab-uuid2devname55
-rwxr-xr-xtests/ts/mount/fstab-uuid2label59
-rwxr-xr-xtests/ts/mount/label53
-rwxr-xr-xtests/ts/mount/move53
-rwxr-xr-xtests/ts/mount/noncanonical37
-rwxr-xr-xtests/ts/mount/paths31
-rwxr-xr-xtests/ts/mount/regfile37
-rwxr-xr-xtests/ts/mount/remount52
-rwxr-xr-xtests/ts/mount/rlimit78
-rwxr-xr-xtests/ts/mount/shared-subtree58
-rwxr-xr-xtests/ts/mount/special40
-rwxr-xr-xtests/ts/mount/uuid52
-rwxr-xr-xtests/ts/namei/logic34
-rwxr-xr-xtests/ts/partx/partx45
-rwxr-xr-xtests/ts/paths/built-in27
-rwxr-xr-xtests/ts/schedutils/cpuset57
-rwxr-xr-xtests/ts/script/race36
-rwxr-xr-xtests/ts/swapon/devname44
-rwxr-xr-xtests/ts/swapon/fixpgsz44
-rwxr-xr-xtests/ts/swapon/fixsig46
-rwxr-xr-xtests/ts/swapon/label46
-rwxr-xr-xtests/ts/swapon/uuid46
455 files changed, 16152 insertions, 0 deletions
diff --git a/tests/Makemodule.am b/tests/Makemodule.am
new file mode 100644
index 0000000..00da7d3
--- /dev/null
+++ b/tests/Makemodule.am
@@ -0,0 +1,20 @@
+
+include tests/helpers/Makemodule.am
+
+EXTRA_DIST += \
+ tests/expected \
+ tests/functions.sh \
+ tests/commands.sh \
+ tests/run.sh \
+ tests/ts
+
+clean-local-tests:
+ rm -rf $(top_builddir)/tests/output $(top_builddir)/tests/diff
+
+CLEAN_LOCALS += clean-local-tests
+
+
+check-local-tests: $(check_PROGRAMS)
+ $(top_srcdir)/tests/run.sh --srcdir=$(abs_top_srcdir) --builddir=$(abs_top_builddir) --nonroot
+
+CHECK_LOCALS += check-local-tests
diff --git a/tests/commands.sh b/tests/commands.sh
new file mode 100644
index 0000000..8a1577e
--- /dev/null
+++ b/tests/commands.sh
@@ -0,0 +1,64 @@
+# Misc settings
+TS_TESTUSER=${TS_TESTUSER:-"test"}
+
+# helpers
+TS_HELPER_SYSINFO="$top_builddir/test_sysinfo"
+TS_HELPER_PATHS="$top_builddir/test_pathnames"
+TS_HELPER_BYTESWAP="$top_builddir/test_byteswap"
+TS_HELPER_MD5="$top_builddir/test_md5"
+
+TS_HELPER_ISMOUNTED="$top_builddir/test_ismounted"
+TS_HELPER_STRUTILS="$top_builddir/test_strutils"
+TS_HELPER_CPUSET="$top_builddir/test_cpuset"
+
+# libmount
+TS_HELPER_LIBMOUNT_OPTSTR="$top_builddir/test_mount_optstr"
+TS_HELPER_LIBMOUNT_TAB="$top_builddir/test_mount_tab"
+TS_HELPER_LIBMOUNT_UTILS="$top_builddir/test_mount_utils"
+TS_HELPER_LIBMOUNT_LOCK="$top_builddir/test_mount_lock"
+TS_HELPER_LIBMOUNT_UPDATE="$top_builddir/test_mount_tab_update"
+TS_HELPER_LIBMOUNT_CONTEXT="$top_builddir/test_mount_context"
+TS_HELPER_LIBMOUNT_TABDIFF="$top_builddir/test_mount_tab_diff"
+
+TS_HELPER_ISLOCAL="$top_builddir/test_islocal"
+TS_HELPER_LOGINDEFS="$top_builddir/test_logindefs"
+
+# TODO: use partx
+TS_HELPER_PARTITIONS="$top_builddir/sample-partitions"
+
+# paths to commands
+TS_CMD_MOUNT=${TS_CMD_MOUNT:-"$top_builddir/mount"}
+TS_CMD_UMOUNT=${TS_CMD_UMOUNT:-"$top_builddir/umount"}
+
+TS_CMD_SWAPON=${TS_CMD_SWAPON:-"$top_builddir/swapon"}
+TS_CMD_SWAPOFF=${TS_CMD_SWAPOFF:-"$top_builddir/swapoff"}
+TS_CMD_LOSETUP=${TS_CMD_LOSETUP:-"$top_builddir/losetup"}
+
+TS_CMD_MKSWAP=${TS_CMD_MKSWAP:-"$top_builddir/mkswap"}
+TS_CMD_MKCRAMFS=${TS_CMD_MKCRAMFS:-"$top_builddir/mkfs.cramfs"}
+TS_CMD_MKMINIX=${TS_CMD_MKMINIX:-"$top_builddir/mkfs.minix"}
+TS_CMD_FSCKCRAMFS=${TS_CMD_FSCKCRAMFS:-"$top_builddir/fsck.cramfs"}
+TS_CMD_FSCKMINIX=${TS_CMD_FSCKMINIX:-"$top_builddir/fsck.minix"}
+
+TS_CMD_IPCS=${TS_CMD_IPCS:-"$top_builddir/ipcs"}
+
+TS_CMD_COL=${TS_CMD_COL:-"$top_builddir/col"}
+TS_CMD_COLUMN=${TS_CMD_COLUMN:-"$top_builddir/column"}
+TS_CMD_COLRM=${TS_CMD_COLRM:-"$top_builddir/colrm"}
+
+TS_CMD_NAMEI=${TS_CMD_NAMEI-"$top_builddir/namei"}
+TS_CMD_LOOK=${TS_CMD_LOOK-"$top_builddir/look"}
+TS_CMD_CAL=${TS_CMD_CAL-"$top_builddir/cal"}
+TS_CMD_SCRIPT=${TS_CMD_SCRIPT-"$top_builddir/script"}
+TS_CMD_EJECT=${TS_CMD_EJECT-"$top_builddir/eject"}
+
+
+TS_CMD_HWCLOCK=${TS_CMD_HWCLOCK-"$top_builddir/hwclock"}
+TS_CMD_LSCPU=${TS_CMD_LSCPU-"$top_builddir/lscpu"}
+
+TS_CMD_BLKID=${TS_CMD_BLKID-"$top_builddir/blkid"}
+TS_CMD_PARTX=${TS_CMD_PARTX-"$top_builddir/partx"}
+TS_CMD_FINDMNT=${TS_CMD_FINDMNT-"$top_builddir/findmnt"}
+
+TS_CMD_FDISK=${TS_CMD_FDISK-"$top_builddir/fdisk"}
+
diff --git a/tests/expected/bitops/swapbytes b/tests/expected/bitops/swapbytes
new file mode 100644
index 0000000..b9468a7
--- /dev/null
+++ b/tests/expected/bitops/swapbytes
@@ -0,0 +1,21 @@
+Testing swab16
+swab16(0x0001) = 0x0100
+swab16(0x1234) = 0x3412
+swab16(0xff00) = 0x00ff
+swab16(0x4000) = 0x0040
+swab16(0xfeff) = 0xfffe
+Testing swab32
+swab32(0x00000001) = 0x01000000
+swab32(0x80000000) = 0x00000080
+swab32(0x12345678) = 0x78563412
+swab32(0xffff0000) = 0x0000ffff
+swab32(0x00ff0000) = 0x0000ff00
+swab32(0xff000000) = 0x000000ff
+Testing swab64
+swab64(0x0000000000000001) = 0x0100000000000000
+swab64(0x8000000000000000) = 0x0000000000000080
+swab64(0x1234567812345678) = 0x7856341278563412
+swab64(0xffffffff00000000) = 0x00000000ffffffff
+swab64(0x00ff000000000000) = 0x000000000000ff00
+swab64(0xff00000000000000) = 0x00000000000000ff
+No errors found in the byteswap implementation
diff --git a/tests/expected/blkid/low-probe-adaptec-raid b/tests/expected/blkid/low-probe-adaptec-raid
new file mode 100644
index 0000000..99a5888
--- /dev/null
+++ b/tests/expected/blkid/low-probe-adaptec-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=adaptec_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=8
diff --git a/tests/expected/blkid/low-probe-befs b/tests/expected/blkid/low-probe-befs
new file mode 100644
index 0000000..b7f25cd
--- /dev/null
+++ b/tests/expected/blkid/low-probe-befs
@@ -0,0 +1,7 @@
+ID_FS_LABEL=befs_test
+ID_FS_LABEL_ENC=befs_test
+ID_FS_TYPE=befs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=95d89dec82f6b73b
+ID_FS_UUID_ENC=95d89dec82f6b73b
+ID_FS_VERSION=little-endian
diff --git a/tests/expected/blkid/low-probe-bfs b/tests/expected/blkid/low-probe-bfs
new file mode 100644
index 0000000..8287304
--- /dev/null
+++ b/tests/expected/blkid/low-probe-bfs
@@ -0,0 +1,2 @@
+ID_FS_TYPE=bfs
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-cramfs b/tests/expected/blkid/low-probe-cramfs
new file mode 100644
index 0000000..7898a36
--- /dev/null
+++ b/tests/expected/blkid/low-probe-cramfs
@@ -0,0 +1,4 @@
+ID_FS_LABEL=test-cram
+ID_FS_LABEL_ENC=test-cram
+ID_FS_TYPE=cramfs
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-ddf-raid b/tests/expected/blkid/low-probe-ddf-raid
new file mode 100644
index 0000000..7956dcd
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ddf-raid
@@ -0,0 +1,5 @@
+ID_FS_TYPE=ddf_raid_member
+ID_FS_USAGE=raid
+ID_FS_UUID=Linux-MDÞ­__
+ID_FS_UUID_ENC=Linux-MDÞ­\xbe\xef
+ID_FS_VERSION=01.02.00
diff --git a/tests/expected/blkid/low-probe-exfat b/tests/expected/blkid/low-probe-exfat
new file mode 100644
index 0000000..b9defbd
--- /dev/null
+++ b/tests/expected/blkid/low-probe-exfat
@@ -0,0 +1,7 @@
+ID_FS_LABEL=Ðовый_том
+ID_FS_LABEL_ENC=Ðовый\x20том
+ID_FS_TYPE=exfat
+ID_FS_USAGE=filesystem
+ID_FS_UUID=9C23-8877
+ID_FS_UUID_ENC=9C23-8877
+ID_FS_VERSION=1.0
diff --git a/tests/expected/blkid/low-probe-ext2 b/tests/expected/blkid/low-probe-ext2
new file mode 100644
index 0000000..c70b856
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ext2
@@ -0,0 +1,7 @@
+ID_FS_LABEL=test-ext2
+ID_FS_LABEL_ENC=test-ext2
+ID_FS_TYPE=ext2
+ID_FS_USAGE=filesystem
+ID_FS_UUID=22f0eac3-5c89-4ec1-9076-60799119aaea
+ID_FS_UUID_ENC=22f0eac3-5c89-4ec1-9076-60799119aaea
+ID_FS_VERSION=1.0
diff --git a/tests/expected/blkid/low-probe-ext3 b/tests/expected/blkid/low-probe-ext3
new file mode 100644
index 0000000..4bac43f
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ext3
@@ -0,0 +1,8 @@
+ID_FS_LABEL=test-ext3
+ID_FS_LABEL_ENC=test-ext3
+ID_FS_SEC_TYPE=ext2
+ID_FS_TYPE=ext3
+ID_FS_USAGE=filesystem
+ID_FS_UUID=35f66dab-477e-4090-a872-95ee0e493ad6
+ID_FS_UUID_ENC=35f66dab-477e-4090-a872-95ee0e493ad6
+ID_FS_VERSION=1.0
diff --git a/tests/expected/blkid/low-probe-fat b/tests/expected/blkid/low-probe-fat
new file mode 100644
index 0000000..4201211
--- /dev/null
+++ b/tests/expected/blkid/low-probe-fat
@@ -0,0 +1,8 @@
+ID_FS_LABEL=TEST-FAT
+ID_FS_LABEL_ENC=TEST-FAT
+ID_FS_SEC_TYPE=msdos
+ID_FS_TYPE=vfat
+ID_FS_USAGE=filesystem
+ID_FS_UUID=DEAD-BEEF
+ID_FS_UUID_ENC=DEAD-BEEF
+ID_FS_VERSION=FAT12
diff --git a/tests/expected/blkid/low-probe-fat16_noheads b/tests/expected/blkid/low-probe-fat16_noheads
new file mode 100644
index 0000000..ba47078
--- /dev/null
+++ b/tests/expected/blkid/low-probe-fat16_noheads
@@ -0,0 +1,8 @@
+ID_FS_LABEL=VTech_1070
+ID_FS_LABEL_ENC=VTech\x201070
+ID_FS_SEC_TYPE=msdos
+ID_FS_TYPE=vfat
+ID_FS_USAGE=filesystem
+ID_FS_UUID=2004-1014
+ID_FS_UUID_ENC=2004-1014
+ID_FS_VERSION=FAT16
diff --git a/tests/expected/blkid/low-probe-fat32_label_64MB b/tests/expected/blkid/low-probe-fat32_label_64MB
new file mode 100644
index 0000000..1179490
--- /dev/null
+++ b/tests/expected/blkid/low-probe-fat32_label_64MB
@@ -0,0 +1,7 @@
+ID_FS_LABEL=BINGO
+ID_FS_LABEL_ENC=BINGO
+ID_FS_TYPE=vfat
+ID_FS_USAGE=filesystem
+ID_FS_UUID=8CB5-BA49
+ID_FS_UUID_ENC=8CB5-BA49
+ID_FS_VERSION=FAT32
diff --git a/tests/expected/blkid/low-probe-gfs2 b/tests/expected/blkid/low-probe-gfs2
new file mode 100644
index 0000000..cd5a664
--- /dev/null
+++ b/tests/expected/blkid/low-probe-gfs2
@@ -0,0 +1,5 @@
+ID_FS_LABEL=mycluster:mygfs2
+ID_FS_LABEL_ENC=mycluster:mygfs2
+ID_FS_TYPE=gfs2
+ID_FS_USAGE=filesystem
+ID_FS_VERSION=1
diff --git a/tests/expected/blkid/low-probe-hfs b/tests/expected/blkid/low-probe-hfs
new file mode 100644
index 0000000..d4cbb5c
--- /dev/null
+++ b/tests/expected/blkid/low-probe-hfs
@@ -0,0 +1,4 @@
+ID_FS_LABEL=BBB
+ID_FS_LABEL_ENC=BBB
+ID_FS_TYPE=hfs
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-hfsplus b/tests/expected/blkid/low-probe-hfsplus
new file mode 100644
index 0000000..f54b59f
--- /dev/null
+++ b/tests/expected/blkid/low-probe-hfsplus
@@ -0,0 +1,4 @@
+ID_FS_LABEL=123456789ABCDE
+ID_FS_LABEL_ENC=123456789ABCDE
+ID_FS_TYPE=hfsplus
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-hpfs b/tests/expected/blkid/low-probe-hpfs
new file mode 100644
index 0000000..47ae1af
--- /dev/null
+++ b/tests/expected/blkid/low-probe-hpfs
@@ -0,0 +1,7 @@
+ID_FS_LABEL=P01_S16A
+ID_FS_LABEL_ENC=P01\x20S16A
+ID_FS_TYPE=hpfs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=3BC2-32D5
+ID_FS_UUID_ENC=3BC2-32D5
+ID_FS_VERSION=2
diff --git a/tests/expected/blkid/low-probe-hpt37x-raid b/tests/expected/blkid/low-probe-hpt37x-raid
new file mode 100644
index 0000000..81f6dec
--- /dev/null
+++ b/tests/expected/blkid/low-probe-hpt37x-raid
@@ -0,0 +1,2 @@
+ID_FS_TYPE=hpt37x_raid_member
+ID_FS_USAGE=raid
diff --git a/tests/expected/blkid/low-probe-hpt45x-raid b/tests/expected/blkid/low-probe-hpt45x-raid
new file mode 100644
index 0000000..4eb9552
--- /dev/null
+++ b/tests/expected/blkid/low-probe-hpt45x-raid
@@ -0,0 +1,2 @@
+ID_FS_TYPE=hpt45x_raid_member
+ID_FS_USAGE=raid
diff --git a/tests/expected/blkid/low-probe-iso b/tests/expected/blkid/low-probe-iso
new file mode 100644
index 0000000..53b739c
--- /dev/null
+++ b/tests/expected/blkid/low-probe-iso
@@ -0,0 +1,6 @@
+ID_FS_LABEL=IsoVolumeName
+ID_FS_LABEL_ENC=IsoVolumeName
+ID_FS_TYPE=iso9660
+ID_FS_USAGE=filesystem
+ID_FS_UUID=2009-09-24-10-34-40-00
+ID_FS_UUID_ENC=2009-09-24-10-34-40-00
diff --git a/tests/expected/blkid/low-probe-iso-joliet b/tests/expected/blkid/low-probe-iso-joliet
new file mode 100644
index 0000000..7d38ad3
--- /dev/null
+++ b/tests/expected/blkid/low-probe-iso-joliet
@@ -0,0 +1,7 @@
+ID_FS_LABEL=ThisWonderfulLabelIsVeryVeryLong
+ID_FS_LABEL_ENC=ThisWonderfulLabelIsVeryVeryLong
+ID_FS_TYPE=iso9660
+ID_FS_USAGE=filesystem
+ID_FS_UUID=2009-09-22-12-52-23-00
+ID_FS_UUID_ENC=2009-09-22-12-52-23-00
+ID_FS_VERSION=Joliet\x20Extension
diff --git a/tests/expected/blkid/low-probe-iso-rr-joliet b/tests/expected/blkid/low-probe-iso-rr-joliet
new file mode 100644
index 0000000..0cff383
--- /dev/null
+++ b/tests/expected/blkid/low-probe-iso-rr-joliet
@@ -0,0 +1,7 @@
+ID_FS_LABEL=ThisIsVolumeName
+ID_FS_LABEL_ENC=ThisIsVolumeName
+ID_FS_TYPE=iso9660
+ID_FS_USAGE=filesystem
+ID_FS_UUID=2009-09-24-10-32-43-00
+ID_FS_UUID_ENC=2009-09-24-10-32-43-00
+ID_FS_VERSION=Joliet\x20Extension
diff --git a/tests/expected/blkid/low-probe-isw-raid b/tests/expected/blkid/low-probe-isw-raid
new file mode 100644
index 0000000..42419c5
--- /dev/null
+++ b/tests/expected/blkid/low-probe-isw-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=isw_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=1.0.00
diff --git a/tests/expected/blkid/low-probe-jbd b/tests/expected/blkid/low-probe-jbd
new file mode 100644
index 0000000..6c6217d
--- /dev/null
+++ b/tests/expected/blkid/low-probe-jbd
@@ -0,0 +1,5 @@
+ID_FS_TYPE=jbd
+ID_FS_USAGE=other
+ID_FS_UUID=0d7a07df-7b06-4829-bce7-3b9c3ece570c
+ID_FS_UUID_ENC=0d7a07df-7b06-4829-bce7-3b9c3ece570c
+ID_FS_VERSION=1.0
diff --git a/tests/expected/blkid/low-probe-jfs b/tests/expected/blkid/low-probe-jfs
new file mode 100644
index 0000000..877fd16
--- /dev/null
+++ b/tests/expected/blkid/low-probe-jfs
@@ -0,0 +1,6 @@
+ID_FS_LABEL=test-jfs
+ID_FS_LABEL_ENC=test-jfs
+ID_FS_TYPE=jfs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=9bf7b82e-7583-4c74-99a4-189a691f27b5
+ID_FS_UUID_ENC=9bf7b82e-7583-4c74-99a4-189a691f27b5
diff --git a/tests/expected/blkid/low-probe-jmicron-raid b/tests/expected/blkid/low-probe-jmicron-raid
new file mode 100644
index 0000000..dc572b7
--- /dev/null
+++ b/tests/expected/blkid/low-probe-jmicron-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=jmicron_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=0.1
diff --git a/tests/expected/blkid/low-probe-lsi-raid b/tests/expected/blkid/low-probe-lsi-raid
new file mode 100644
index 0000000..48f7114
--- /dev/null
+++ b/tests/expected/blkid/low-probe-lsi-raid
@@ -0,0 +1,2 @@
+ID_FS_TYPE=lsi_mega_raid_member
+ID_FS_USAGE=raid
diff --git a/tests/expected/blkid/low-probe-lvm2 b/tests/expected/blkid/low-probe-lvm2
new file mode 100644
index 0000000..19aed2a
--- /dev/null
+++ b/tests/expected/blkid/low-probe-lvm2
@@ -0,0 +1,5 @@
+ID_FS_TYPE=LVM2_member
+ID_FS_USAGE=raid
+ID_FS_UUID=Vynv4k-APH8-xQER-HSBb-8VJ3-SvFF-PB5O1U
+ID_FS_UUID_ENC=Vynv4k-APH8-xQER-HSBb-8VJ3-SvFF-PB5O1U
+ID_FS_VERSION=LVM2\x20001
diff --git a/tests/expected/blkid/low-probe-mdraid b/tests/expected/blkid/low-probe-mdraid
new file mode 100644
index 0000000..0613dfe
--- /dev/null
+++ b/tests/expected/blkid/low-probe-mdraid
@@ -0,0 +1,5 @@
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+ID_FS_UUID=37c76b91-011a-05c5-d30c-1fd4c5c3dbbc
+ID_FS_UUID_ENC=37c76b91-011a-05c5-d30c-1fd4c5c3dbbc
+ID_FS_VERSION=0.90.0
diff --git a/tests/expected/blkid/low-probe-minix b/tests/expected/blkid/low-probe-minix
new file mode 100644
index 0000000..9627799
--- /dev/null
+++ b/tests/expected/blkid/low-probe-minix
@@ -0,0 +1,3 @@
+ID_FS_TYPE=minix
+ID_FS_USAGE=filesystem
+ID_FS_VERSION=1
diff --git a/tests/expected/blkid/low-probe-netware b/tests/expected/blkid/low-probe-netware
new file mode 100644
index 0000000..094d5c9
--- /dev/null
+++ b/tests/expected/blkid/low-probe-netware
@@ -0,0 +1,5 @@
+ID_FS_TYPE=nss
+ID_FS_USAGE=filesystem
+ID_FS_UUID=64fba6bb-ebad-d901-8000-361d9abf2560
+ID_FS_UUID_ENC=64fba6bb-ebad-d901-8000-361d9abf2560
+ID_FS_VERSION=43.02
diff --git a/tests/expected/blkid/low-probe-nilfs2 b/tests/expected/blkid/low-probe-nilfs2
new file mode 100644
index 0000000..c6c9cab
--- /dev/null
+++ b/tests/expected/blkid/low-probe-nilfs2
@@ -0,0 +1,7 @@
+ID_FS_LABEL=test-nilfs2
+ID_FS_LABEL_ENC=test-nilfs2
+ID_FS_TYPE=nilfs2
+ID_FS_USAGE=filesystem
+ID_FS_UUID=524025fb-6d31-40e6-baad-1db36cfdf806
+ID_FS_UUID_ENC=524025fb-6d31-40e6-baad-1db36cfdf806
+ID_FS_VERSION=2
diff --git a/tests/expected/blkid/low-probe-ntfs b/tests/expected/blkid/low-probe-ntfs
new file mode 100644
index 0000000..aaaa077
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ntfs
@@ -0,0 +1,6 @@
+ID_FS_LABEL=Ðовый_том
+ID_FS_LABEL_ENC=Ðовый\x20том
+ID_FS_TYPE=ntfs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=09CBB6DE30C87310
+ID_FS_UUID_ENC=09CBB6DE30C87310
diff --git a/tests/expected/blkid/low-probe-nvidia-raid b/tests/expected/blkid/low-probe-nvidia-raid
new file mode 100644
index 0000000..d143ea7
--- /dev/null
+++ b/tests/expected/blkid/low-probe-nvidia-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=nvidia_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=100
diff --git a/tests/expected/blkid/low-probe-ocfs2 b/tests/expected/blkid/low-probe-ocfs2
new file mode 100644
index 0000000..2328d21
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ocfs2
@@ -0,0 +1,7 @@
+ID_FS_LABEL=test-ocfs2
+ID_FS_LABEL_ENC=test-ocfs2
+ID_FS_TYPE=ocfs2
+ID_FS_USAGE=filesystem
+ID_FS_UUID=6b6bfbea-3a79-4f0c-b166-a20776102445
+ID_FS_UUID_ENC=6b6bfbea-3a79-4f0c-b166-a20776102445
+ID_FS_VERSION=0.90
diff --git a/tests/expected/blkid/low-probe-promise-raid b/tests/expected/blkid/low-probe-promise-raid
new file mode 100644
index 0000000..a2a82d0
--- /dev/null
+++ b/tests/expected/blkid/low-probe-promise-raid
@@ -0,0 +1,2 @@
+ID_FS_TYPE=promise_fasttrack_raid_member
+ID_FS_USAGE=raid
diff --git a/tests/expected/blkid/low-probe-reiser3 b/tests/expected/blkid/low-probe-reiser3
new file mode 100644
index 0000000..d376eca
--- /dev/null
+++ b/tests/expected/blkid/low-probe-reiser3
@@ -0,0 +1,7 @@
+ID_FS_LABEL=TESTREISER
+ID_FS_LABEL_ENC=TESTREISER
+ID_FS_TYPE=reiserfs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=9efe7863-b124-46dc-ad68-8ecd04230a7b
+ID_FS_UUID_ENC=9efe7863-b124-46dc-ad68-8ecd04230a7b
+ID_FS_VERSION=JR
diff --git a/tests/expected/blkid/low-probe-reiser4 b/tests/expected/blkid/low-probe-reiser4
new file mode 100644
index 0000000..65d63aa
--- /dev/null
+++ b/tests/expected/blkid/low-probe-reiser4
@@ -0,0 +1,7 @@
+ID_FS_LABEL=TESTR4
+ID_FS_LABEL_ENC=TESTR4
+ID_FS_TYPE=reiser4
+ID_FS_USAGE=filesystem
+ID_FS_UUID=9722633c-d69a-4881-b1c8-bedecbbf39d2
+ID_FS_UUID_ENC=9722633c-d69a-4881-b1c8-bedecbbf39d2
+ID_FS_VERSION=4
diff --git a/tests/expected/blkid/low-probe-romfs b/tests/expected/blkid/low-probe-romfs
new file mode 100644
index 0000000..2eb982b
--- /dev/null
+++ b/tests/expected/blkid/low-probe-romfs
@@ -0,0 +1,4 @@
+ID_FS_LABEL=test-romfs
+ID_FS_LABEL_ENC=test-romfs
+ID_FS_TYPE=romfs
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-silicon-raid b/tests/expected/blkid/low-probe-silicon-raid
new file mode 100644
index 0000000..c468056
--- /dev/null
+++ b/tests/expected/blkid/low-probe-silicon-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=silicon_medley_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=0.0
diff --git a/tests/expected/blkid/low-probe-small-fat32 b/tests/expected/blkid/low-probe-small-fat32
new file mode 100644
index 0000000..39239e6
--- /dev/null
+++ b/tests/expected/blkid/low-probe-small-fat32
@@ -0,0 +1,7 @@
+ID_FS_LABEL=TESTVFAT
+ID_FS_LABEL_ENC=TESTVFAT
+ID_FS_TYPE=vfat
+ID_FS_USAGE=filesystem
+ID_FS_UUID=1423-AAE1
+ID_FS_UUID_ENC=1423-AAE1
+ID_FS_VERSION=FAT32
diff --git a/tests/expected/blkid/low-probe-swap0 b/tests/expected/blkid/low-probe-swap0
new file mode 100644
index 0000000..bbd9495
--- /dev/null
+++ b/tests/expected/blkid/low-probe-swap0
@@ -0,0 +1,3 @@
+ID_FS_TYPE=swap
+ID_FS_USAGE=other
+ID_FS_VERSION=1
diff --git a/tests/expected/blkid/low-probe-swap1 b/tests/expected/blkid/low-probe-swap1
new file mode 100644
index 0000000..e078d99
--- /dev/null
+++ b/tests/expected/blkid/low-probe-swap1
@@ -0,0 +1,7 @@
+ID_FS_LABEL=SWAP-TEST
+ID_FS_LABEL_ENC=SWAP-TEST
+ID_FS_TYPE=swap
+ID_FS_USAGE=other
+ID_FS_UUID=8ff8e77f-8553-485e-8656-58be67a81666
+ID_FS_UUID_ENC=8ff8e77f-8553-485e-8656-58be67a81666
+ID_FS_VERSION=2
diff --git a/tests/expected/blkid/low-probe-tuxonice b/tests/expected/blkid/low-probe-tuxonice
new file mode 100644
index 0000000..3fd5a94
--- /dev/null
+++ b/tests/expected/blkid/low-probe-tuxonice
@@ -0,0 +1,5 @@
+ID_FS_TYPE=swsuspend
+ID_FS_USAGE=other
+ID_FS_UUID=7ec1e8e4-0a69-4565-860c-3f13b0f79838
+ID_FS_UUID_ENC=7ec1e8e4-0a69-4565-860c-3f13b0f79838
+ID_FS_VERSION=tuxonice
diff --git a/tests/expected/blkid/low-probe-ubifs b/tests/expected/blkid/low-probe-ubifs
new file mode 100644
index 0000000..4164db4
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ubifs
@@ -0,0 +1,5 @@
+ID_FS_TYPE=ubifs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=bafe46c2-5ed9-4405-8e81-7fc317fab8f0
+ID_FS_UUID_ENC=bafe46c2-5ed9-4405-8e81-7fc317fab8f0
+ID_FS_VERSION=w4r0
diff --git a/tests/expected/blkid/low-probe-udf b/tests/expected/blkid/low-probe-udf
new file mode 100644
index 0000000..ec24963
--- /dev/null
+++ b/tests/expected/blkid/low-probe-udf
@@ -0,0 +1,4 @@
+ID_FS_LABEL=test-udf
+ID_FS_LABEL_ENC=test-udf
+ID_FS_TYPE=udf
+ID_FS_USAGE=filesystem
diff --git a/tests/expected/blkid/low-probe-ufs b/tests/expected/blkid/low-probe-ufs
new file mode 100644
index 0000000..96828d7
--- /dev/null
+++ b/tests/expected/blkid/low-probe-ufs
@@ -0,0 +1,5 @@
+ID_FS_TYPE=ufs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=4b0e640aec56ac70
+ID_FS_UUID_ENC=4b0e640aec56ac70
+ID_FS_VERSION=2
diff --git a/tests/expected/blkid/low-probe-via-raid b/tests/expected/blkid/low-probe-via-raid
new file mode 100644
index 0000000..8dd0e8c
--- /dev/null
+++ b/tests/expected/blkid/low-probe-via-raid
@@ -0,0 +1,3 @@
+ID_FS_TYPE=via_raid_member
+ID_FS_USAGE=raid
+ID_FS_VERSION=1
diff --git a/tests/expected/blkid/low-probe-vmfs b/tests/expected/blkid/low-probe-vmfs
new file mode 100644
index 0000000..41914b0
--- /dev/null
+++ b/tests/expected/blkid/low-probe-vmfs
@@ -0,0 +1,7 @@
+ID_FS_LABEL=toto
+ID_FS_LABEL_ENC=toto
+ID_FS_TYPE=VMFS
+ID_FS_USAGE=filesystem
+ID_FS_UUID=49edf844-ebfc28f3-65cb-0021280083cf
+ID_FS_UUID_ENC=49edf844-ebfc28f3-65cb-0021280083cf
+ID_FS_VERSION=31
diff --git a/tests/expected/blkid/low-probe-vmfs_volume b/tests/expected/blkid/low-probe-vmfs_volume
new file mode 100644
index 0000000..0d4dd83
--- /dev/null
+++ b/tests/expected/blkid/low-probe-vmfs_volume
@@ -0,0 +1,7 @@
+ID_FS_TYPE=VMFS_volume_member
+ID_FS_USAGE=raid
+ID_FS_UUID=49edf842-dcb35d37-b383-0021280083cf
+ID_FS_UUID_ENC=49edf842-dcb35d37-b383-0021280083cf
+ID_FS_UUID_SUB=49edf844-da2dde19-747b-0021280083cf
+ID_FS_UUID_SUB_ENC=49edf844-da2dde19-747b-0021280083cf
+ID_FS_VERSION=3
diff --git a/tests/expected/blkid/low-probe-xfs b/tests/expected/blkid/low-probe-xfs
new file mode 100644
index 0000000..f21d881
--- /dev/null
+++ b/tests/expected/blkid/low-probe-xfs
@@ -0,0 +1,6 @@
+ID_FS_LABEL=test-xfs
+ID_FS_LABEL_ENC=test-xfs
+ID_FS_TYPE=xfs
+ID_FS_USAGE=filesystem
+ID_FS_UUID=8c8a0a5a-9f57-492e-9610-45a61f38f58a
+ID_FS_UUID_ENC=8c8a0a5a-9f57-492e-9610-45a61f38f58a
diff --git a/tests/expected/blkid/low-probe-zfs b/tests/expected/blkid/low-probe-zfs
new file mode 100644
index 0000000..46727de
--- /dev/null
+++ b/tests/expected/blkid/low-probe-zfs
@@ -0,0 +1,9 @@
+ID_FS_LABEL=tank
+ID_FS_LABEL_ENC=tank
+ID_FS_TYPE=zfs_member
+ID_FS_USAGE=raid
+ID_FS_UUID=1782036546311300980
+ID_FS_UUID_ENC=1782036546311300980
+ID_FS_UUID_SUB=13179280127379850514
+ID_FS_UUID_SUB_ENC=13179280127379850514
+ID_FS_VERSION=8
diff --git a/tests/expected/blkid/lowprobe-pt-bsd b/tests/expected/blkid/lowprobe-pt-bsd
new file mode 100644
index 0000000..40e52a2
--- /dev/null
+++ b/tests/expected/blkid/lowprobe-pt-bsd
@@ -0,0 +1,4 @@
+size: 4456448, sector size: 512, PT: bsd, offset: 512
+---
+#1: 7936 4864 0x7
+#2: 12544 3584 0x7
diff --git a/tests/expected/blkid/lowprobe-pt-dos+bsd b/tests/expected/blkid/lowprobe-pt-dos+bsd
new file mode 100644
index 0000000..6585686
--- /dev/null
+++ b/tests/expected/blkid/lowprobe-pt-dos+bsd
@@ -0,0 +1,6 @@
+size: 8388608, sector size: 512, PT: dos, offset: 446
+---
+#1: 32 7648 0x83
+#2: 7680 8704 0xa5
+#5: 7936 4864 0x7 (freebsd)
+#6: 12544 3584 0x7 (freebsd)
diff --git a/tests/expected/blkid/lowprobe-pt-gpt b/tests/expected/blkid/lowprobe-pt-gpt
new file mode 100644
index 0000000..aa65018
--- /dev/null
+++ b/tests/expected/blkid/lowprobe-pt-gpt
@@ -0,0 +1,7 @@
+size: 10485760, sector size: 512, PT: gpt, offset: 512
+---
+#1: 34 2014 0x0 name='ThisIsName' uuid='1dcf10bc-637e-4c52-8203-087ae10a820b' type='ebd0a0a2-b9e5-4433-87c0-68b6b72699c7'
+#2: 2048 2048 0x0 name='ThisIsOtherName' uuid='a1d03a96-7238-46c6-bbb3-789cbe173ec7' type='ebd0a0a2-b9e5-4433-87c0-68b6b72699c7'
+#3: 4096 2048 0x0 name='primary' uuid='a7101b6c-468c-47df-aff6-cd444d12af61' type='ebd0a0a2-b9e5-4433-87c0-68b6b72699c7'
+#4: 6144 2048 0x0 name='primary' uuid='afc4950a-f0f1-4add-802c-5957133486d1' type='ebd0a0a2-b9e5-4433-87c0-68b6b72699c7'
+#5: 8192 2048 0x0 name='primary' uuid='0db0a787-c16b-4886-af3a-fbb97299677c' type='ebd0a0a2-b9e5-4433-87c0-68b6b72699c7'
diff --git a/tests/expected/blkid/lowprobe-pt-sgi b/tests/expected/blkid/lowprobe-pt-sgi
new file mode 100644
index 0000000..22bc7b4
--- /dev/null
+++ b/tests/expected/blkid/lowprobe-pt-sgi
@@ -0,0 +1,4 @@
+size: 10485760, sector size: 512, PT: sgi, offset: 0
+---
+#1: 63 1606437 0x83
+#2: 1606500 30523500 0x83
diff --git a/tests/expected/blkid/lowprobe-pt-sun b/tests/expected/blkid/lowprobe-pt-sun
new file mode 100644
index 0000000..54cb561
--- /dev/null
+++ b/tests/expected/blkid/lowprobe-pt-sun
@@ -0,0 +1,4 @@
+size: 10485760, sector size: 512, PT: sun, offset: 0
+---
+#1: 0 87380 0x83
+#2: 87380 43690 0x82
diff --git a/tests/expected/blkid/md-raid0-whole b/tests/expected/blkid/md-raid0-whole
new file mode 100644
index 0000000..d9c4466
--- /dev/null
+++ b/tests/expected/blkid/md-raid0-whole
@@ -0,0 +1,53 @@
+Initialize devices
+Create RAID device
+Create partitions on RAID device
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-204543, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-204543, default 204543): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-204543, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-204543, default 204543): Using default value 204543
+Partition 2 of type Linux and of size 88.9 MiB is set
+
+Command (m for help):
+Disk /dev/md8: 104 MB, 104726528 bytes, 204544 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 65536 bytes / 131072 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/md8p1 2048 22527 10240 83 Linux
+/dev/md8p2 22528 204543 91008 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Probe first RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+
+
+ID_FS_VERSION=0.90.0
+Probe second RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+
+
+ID_FS_VERSION=0.90.0
+Stop RAID device
+Deinitialize devices
diff --git a/tests/expected/blkid/md-raid1-part b/tests/expected/blkid/md-raid1-part
new file mode 100644
index 0000000..ce93b73
--- /dev/null
+++ b/tests/expected/blkid/md-raid1-part
@@ -0,0 +1,64 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-104447, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-104447, default 104447): Partition 1 of type Linux and of size 25 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (53248-104447, default 53248): Using default value 53248
+Last sector, +sectors or +size{K,M,G} (53248-104447, default 104447): Using default value 104447
+Partition 2 of type Linux and of size 25 MiB is set
+
+Command (m for help):
+Disk /dev/...: 53 MB, 53477376 bytes, 104448 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 32768 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/...1 2048 53247 25600 83 Linux
+/dev/...2 53248 104447 25600 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Create RAID1 device
+Probe whole-disk
+ID_PART_TABLE_TYPE=dos
+Probe first RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+ID_FS_UUID=__ts_uuid__
+ID_FS_UUID_ENC=__ts_uuid_enc__
+ID_FS_VERSION=0.90.0
+ID_PART_ENTRY_DISK=__ts_majorminor__
+ID_PART_ENTRY_NUMBER=1
+ID_PART_ENTRY_OFFSET=2048
+ID_PART_ENTRY_SCHEME=dos
+ID_PART_ENTRY_SIZE=51200
+ID_PART_ENTRY_TYPE=0x83
+Probe second RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+ID_FS_UUID=__ts_uuid__
+ID_FS_UUID_ENC=__ts_uuid_enc__
+ID_FS_VERSION=0.90.0
+ID_PART_ENTRY_DISK=__ts_majorminor__
+ID_PART_ENTRY_NUMBER=2
+ID_PART_ENTRY_OFFSET=53248
+ID_PART_ENTRY_SCHEME=dos
+ID_PART_ENTRY_SIZE=51200
+ID_PART_ENTRY_TYPE=0x83
diff --git a/tests/expected/blkid/md-raid1-whole b/tests/expected/blkid/md-raid1-whole
new file mode 100644
index 0000000..b6e45dc
--- /dev/null
+++ b/tests/expected/blkid/md-raid1-whole
@@ -0,0 +1,52 @@
+Initialize devices
+Create RAID device
+Create partitions on RAID device
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-102271, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-102271, default 102271): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-102271, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-102271, default 102271): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help):
+Disk /dev/md8: 52 MB, 52363264 bytes, 102272 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/md8p1 2048 22527 10240 83 Linux
+/dev/md8p2 22528 43007 10240 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Probe first RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+
+
+ID_FS_VERSION=0.90.0
+Probe second RAID member
+ID_FS_TYPE=linux_raid_member
+ID_FS_USAGE=raid
+
+
+ID_FS_VERSION=0.90.0
+Stop RAID device
+Deinitialize devices
diff --git a/tests/expected/build-sys/config b/tests/expected/build-sys/config
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/expected/build-sys/config
diff --git a/tests/expected/build-sys/config-all b/tests/expected/build-sys/config-all
new file mode 100644
index 0000000..c31bc40
--- /dev/null
+++ b/tests/expected/build-sys/config-all
@@ -0,0 +1,111 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+arch:
+blkid.static: STATIC
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chfn: libpam libpam_misc
+chrt:
+chsh: libpam libpam_misc
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+ddate:
+delpart:
+dmesg:
+elvtune:
+fallocate:
+fdformat:
+fdisk.static: STATIC
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+last:
+ldattach:
+line:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+losetup.static: STATIC
+lscpu:
+lslocks:
+mcookie:
+mesg:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+mount.static: STATIC
+namei:
+newgrp: rypt
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+sfdisk.static: STATIC
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+umount.static: STATIC
+unshare:
+utmpdump:
+vipw:
+wall:
+wdctl:
+whereis:
+write:
diff --git a/tests/expected/build-sys/config-all-devel b/tests/expected/build-sys/config-all-devel
new file mode 100644
index 0000000..4b31e7e
--- /dev/null
+++ b/tests/expected/build-sys/config-all-devel
@@ -0,0 +1,120 @@
+mkswap: libblkid libselinux libuuid
+swaplabel: libblkid libuuid
+blockdev:
+elvtune:
+fdformat:
+fsck.cramfs: libz
+fsck.minix:
+isosize:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+raw:
+cfdisk: libblkid libncursesw libtinfo libuuid
+fdisk: libblkid libuuid
+sfdisk:
+fsck: libblkid libuuid
+getopt:
+hwclock: libaudit
+test_at:
+test_blkdev:
+test_canonicalize:
+test_cpuset:
+test_ismounted:
+test_loopdev:
+test_mangle:
+test_procutils:
+test_strutils:
+test_sysfs:
+test_tt:
+test_wholedisk:
+mkfs: libblkid libuuid
+partitions: libblkid libuuid
+superblocks: libblkid libuuid
+topology: libblkid libuuid
+libblkid.so.1.1.0: libuuid
+mount: libblkid libmount libselinux libsepol libuuid
+libmount.so.1.1.0: libblkid libselinux libsepol libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+tst_uuid: libuuid
+chfn: libpam libpam_misc libselinux
+chsh: libpam libpam_misc libselinux
+last:
+login: libaudit libpam libpam_misc libselinux
+newgrp: rypt
+test_islocal:
+test_logindefs:
+vipw: libselinux
+blkid: libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libselinux libsepol libuuid
+lsblk: libblkid libudev libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+cal: libncursesw libtinfo
+ddate:
+kill:
+logger:
+look:
+mcookie:
+namei:
+rename:
+whereis:
+mount: libblkid libmount libselinux libsepol libuuid
+swapon: libblkid libuuid
+umount: libblkid libmount libselinux libsepol libuuid
+losetup:
+partx: libblkid libuuid
+addpart:
+delpart:
+chrt:
+ionice:
+taskset:
+mountpoint: libblkid libmount libselinux libsepol libuuid
+arch:
+chcpu:
+ctrlaltdel:
+cytune:
+dmesg:
+fallocate:
+flock:
+fsfreeze:
+fstrim:
+ipcmk:
+ipcrm:
+ipcs:
+ldattach:
+lscpu:
+pivot_root:
+prlimit:
+readprofile:
+renice:
+rtcwake:
+setarch:
+setsid:
+switch_root:
+tunelp:
+unshare:
+agetty:
+mesg:
+script: libutempter libutil
+scriptreplay:
+setterm: libtinfo
+write:
+test_byteswap:
+test_md5:
+test_pathnames:
+test_sysinfo:
+col:
+colcrt:
+colrm:
+column:
+hexdump:
+line:
+more: libtinfo
+pg: libncursesw libtinfo
+rev:
+tailf:
+ul: libtinfo
diff --git a/tests/expected/build-sys/config-all-non-nls b/tests/expected/build-sys/config-all-non-nls
new file mode 100644
index 0000000..c31bc40
--- /dev/null
+++ b/tests/expected/build-sys/config-all-non-nls
@@ -0,0 +1,111 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+arch:
+blkid.static: STATIC
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chfn: libpam libpam_misc
+chrt:
+chsh: libpam libpam_misc
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+ddate:
+delpart:
+dmesg:
+elvtune:
+fallocate:
+fdformat:
+fdisk.static: STATIC
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+last:
+ldattach:
+line:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+losetup.static: STATIC
+lscpu:
+lslocks:
+mcookie:
+mesg:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+mount.static: STATIC
+namei:
+newgrp: rypt
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+sfdisk.static: STATIC
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+umount.static: STATIC
+unshare:
+utmpdump:
+vipw:
+wall:
+wdctl:
+whereis:
+write:
diff --git a/tests/expected/build-sys/config-audit b/tests/expected/build-sys/config-audit
new file mode 100644
index 0000000..8c9bfa5
--- /dev/null
+++ b/tests/expected/build-sys/config-audit
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock: libaudit
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libaudit libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-core b/tests/expected/build-sys/config-core
new file mode 100644
index 0000000..f7da4b9
--- /dev/null
+++ b/tests/expected/build-sys/config-core
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-devel b/tests/expected/build-sys/config-devel
new file mode 100644
index 0000000..a2e0411
--- /dev/null
+++ b/tests/expected/build-sys/config-devel
@@ -0,0 +1,111 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libselinux libsepol libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libselinux libsepol libuuid
+fsck: libblkid libmount libselinux libsepol libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libselinux libsepol libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libselinux libsepol libudev libuuid
+mkswap: libblkid libselinux libuuid
+mount: libblkid libmount libselinux libsepol libuuid
+mountpoint: libblkid libmount libselinux libsepol libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libselinux libsepol libuuid
+swapon: libblkid libmount libselinux libsepol libuuid
+umount: libblkid libmount libselinux libsepol libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+arch:
+blkid.static: STATIC
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chfn: libpam libpam_misc libselinux
+chrt:
+chsh: libpam libpam_misc libselinux
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+ddate:
+delpart:
+dmesg:
+elvtune:
+fallocate:
+fdformat:
+fdisk.static: STATIC
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock: libaudit
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+last:
+ldattach:
+line:
+logger:
+login: libaudit libpam libpam_misc libselinux
+look:
+losetup:
+losetup.static: STATIC
+lscpu:
+lslocks:
+mcookie:
+mesg:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+mount.static: STATIC
+namei:
+newgrp: rypt
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutempter libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+sfdisk.static: STATIC
+su: libpam libpam_misc
+sulogin: libselinux rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+umount.static: STATIC
+unshare:
+utmpdump:
+vipw: libselinux
+wall:
+wdctl:
+whereis:
+write:
diff --git a/tests/expected/build-sys/config-devel-new-mount b/tests/expected/build-sys/config-devel-new-mount
new file mode 100644
index 0000000..74c35c7
--- /dev/null
+++ b/tests/expected/build-sys/config-devel-new-mount
@@ -0,0 +1,127 @@
+mkswap: libblkid libselinux libuuid
+swaplabel: libblkid libuuid
+blockdev:
+elvtune:
+fdformat:
+fsck.cramfs: libz
+fsck.minix:
+isosize:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+raw:
+cfdisk: libblkid libncursesw libtinfo libuuid
+fdisk: libblkid libuuid
+fdisk.static: STATIC
+sfdisk:
+sfdisk.static: STATIC
+fsck: libblkid libuuid
+getopt:
+hwclock: libaudit
+test_at:
+test_blkdev:
+test_canonicalize:
+test_cpuset:
+test_ismounted:
+test_loopdev:
+test_mangle:
+test_procutils:
+test_strutils:
+test_sysfs:
+test_tt:
+test_wholedisk:
+mkfs: libblkid libuuid
+partitions: libblkid libuuid
+superblocks: libblkid libuuid
+topology: libblkid libuuid
+libblkid.so.1.1.0: libuuid
+libmount.so.1.1.0: libblkid libselinux libsepol libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+tst_uuid: libuuid
+chfn: libpam libpam_misc libselinux
+chsh: libpam libpam_misc libselinux
+last:
+login: libaudit libpam libpam_misc libselinux
+newgrp: rypt
+test_islocal:
+test_logindefs:
+vipw: libselinux
+blkid: libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libselinux libsepol libuuid
+lsblk: libblkid libudev libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+blkid.static: STATIC
+cal: libncursesw libtinfo
+ddate:
+kill:
+logger:
+look:
+lslocks:
+mcookie:
+namei:
+rename:
+whereis:
+partx: libblkid libuuid
+addpart:
+delpart:
+chrt:
+ionice:
+taskset:
+mount: libblkid libmount libselinux libsepol libuuid
+mountpoint: libblkid libmount libselinux libsepol libuuid
+swapon: libblkid libuuid
+umount: libblkid libmount libselinux libsepol libuuid
+arch:
+chcpu:
+ctrlaltdel:
+cytune:
+dmesg:
+fallocate:
+flock:
+fsfreeze:
+fstrim:
+ipcmk:
+ipcrm:
+ipcs:
+ldattach:
+losetup:
+losetup.static: STATIC
+lscpu:
+mount.static: STATIC
+pivot_root:
+prlimit:
+readprofile:
+renice:
+rtcwake:
+setarch:
+setsid:
+switch_root:
+tunelp:
+umount.static: STATIC
+unshare:
+agetty:
+mesg:
+script: libutempter libutil
+scriptreplay:
+setterm: libtinfo
+wall:
+write:
+test_byteswap:
+test_md5:
+test_pathnames:
+test_sysinfo:
+col:
+colcrt:
+colrm:
+column:
+hexdump:
+line:
+more: libtinfo
+pg: libncursesw libtinfo
+rev:
+tailf:
+ul: libtinfo
diff --git a/tests/expected/build-sys/config-non-libblkid b/tests/expected/build-sys/config-non-libblkid
new file mode 100644
index 0000000..beb4254
--- /dev/null
+++ b/tests/expected/build-sys/config-non-libblkid
@@ -0,0 +1,75 @@
+libuuid.so.1.3.0: ld-linux-x86-64
+mkswap: libuuid
+uuidd: libuuid
+uuidgen: libuuid
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+cfdisk: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+dmesg:
+fallocate:
+fdformat:
+fdisk: ld-linux-x86-64
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-non-libmount b/tests/expected/build-sys/config-non-libmount
new file mode 100644
index 0000000..72ad726
--- /dev/null
+++ b/tests/expected/build-sys/config-non-libmount
@@ -0,0 +1,84 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+mkswap: libblkid libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-non-libs b/tests/expected/build-sys/config-non-libs
new file mode 100644
index 0000000..6a9e3c9
--- /dev/null
+++ b/tests/expected/build-sys/config-non-libs
@@ -0,0 +1,72 @@
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+cfdisk: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+dmesg:
+fallocate:
+fdformat:
+fdisk: ld-linux-x86-64
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+mkswap:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-non-libuuid b/tests/expected/build-sys/config-non-libuuid
new file mode 100644
index 0000000..c8dc870
--- /dev/null
+++ b/tests/expected/build-sys/config-non-libuuid
@@ -0,0 +1,91 @@
+blkid: libblkid
+cfdisk: libblkid libncursesw libtinfo
+eject: libblkid libmount
+fdisk: ld-linux-x86-64 libblkid
+findfs: libblkid
+findmnt: libblkid libmount
+fsck: libblkid libmount
+libblkid.so.1.1.0: ld-linux-x86-64
+libmount.so.1.1.0: ld-linux-x86-64 libblkid
+lsblk: libblkid libmount libudev
+mkswap: libblkid
+mount: libblkid libmount
+mountpoint: libblkid libmount
+partx: libblkid
+swaplabel: libblkid
+swapoff: libblkid libmount
+swapon: libblkid libmount
+umount: libblkid libmount
+wipefs: libblkid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-non-nls b/tests/expected/build-sys/config-non-nls
new file mode 100644
index 0000000..f7da4b9
--- /dev/null
+++ b/tests/expected/build-sys/config-non-nls
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-old-mount b/tests/expected/build-sys/config-old-mount
new file mode 100644
index 0000000..4a420e3
--- /dev/null
+++ b/tests/expected/build-sys/config-old-mount
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-selinux b/tests/expected/build-sys/config-selinux
new file mode 100644
index 0000000..2bffdcf
--- /dev/null
+++ b/tests/expected/build-sys/config-selinux
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libselinux libsepol libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libselinux libsepol libuuid
+fsck: libblkid libmount libselinux libsepol libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libselinux libsepol libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libselinux libsepol libudev libuuid
+mkswap: libblkid libselinux libuuid
+mount: libblkid libmount libselinux libsepol libuuid
+mountpoint: libblkid libmount libselinux libsepol libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libselinux libsepol libuuid
+swapon: libblkid libmount libselinux libsepol libuuid
+umount: libblkid libmount libselinux libsepol libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc libselinux
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: libselinux rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-slang b/tests/expected/build-sys/config-slang
new file mode 100644
index 0000000..f6268c3
--- /dev/null
+++ b/tests/expected/build-sys/config-slang
@@ -0,0 +1,94 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libslang libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/build-sys/config-static b/tests/expected/build-sys/config-static
new file mode 100644
index 0000000..097d840
--- /dev/null
+++ b/tests/expected/build-sys/config-static
@@ -0,0 +1,100 @@
+blkid: libblkid libuuid
+cfdisk: libblkid libncursesw libtinfo libuuid
+eject: libblkid libmount libuuid
+fdisk: ld-linux-x86-64 libblkid libuuid
+findfs: libblkid libuuid
+findmnt: libblkid libmount libuuid
+fsck: libblkid libmount libuuid
+libblkid.so.1.1.0: ld-linux-x86-64 libuuid
+libmount.so.1.1.0: ld-linux-x86-64 libblkid libuuid
+libuuid.so.1.3.0: ld-linux-x86-64
+lsblk: libblkid libmount libudev libuuid
+mkswap: libblkid libuuid
+mount: libblkid libmount libuuid
+mountpoint: libblkid libmount libuuid
+partx: libblkid libuuid
+swaplabel: libblkid libuuid
+swapoff: libblkid libmount libuuid
+swapon: libblkid libmount libuuid
+umount: libblkid libmount libuuid
+uuidd: libuuid
+uuidgen: libuuid
+wipefs: libblkid libuuid
+addpart:
+agetty:
+blkid.static: STATIC
+blockdev:
+cal: libncursesw libtinfo
+chcpu:
+chrt:
+col:
+colcrt:
+colrm:
+column:
+ctrlaltdel:
+cytune:
+delpart:
+dmesg:
+fallocate:
+fdformat:
+fdisk.static: STATIC
+flock:
+fsck.cramfs: libz
+fsck.minix:
+fsfreeze:
+fstrim:
+getopt:
+hexdump:
+hwclock:
+ionice:
+ipcmk:
+ipcrm:
+ipcs:
+isosize:
+kill:
+ldattach:
+logger:
+login: libpam libpam_misc
+look:
+losetup:
+losetup.static: STATIC
+lscpu:
+lslocks:
+mcookie:
+mkfs:
+mkfs.bfs:
+mkfs.cramfs: libz
+mkfs.minix:
+more: libtinfo
+mount.static: STATIC
+namei:
+pg: libncursesw libtinfo
+pivot_root:
+prlimit:
+raw:
+readprofile:
+rename:
+renice:
+resizepart:
+rev:
+rtcwake:
+script: libutil
+scriptreplay:
+setarch:
+setsid:
+setterm: libtinfo
+sfdisk:
+sfdisk.static: STATIC
+su: libpam libpam_misc
+sulogin: rypt
+switch_root:
+tailf:
+taskset:
+tunelp:
+ul: libtinfo
+umount.static: STATIC
+unshare:
+utmpdump:
+wall:
+wdctl:
+whereis:
diff --git a/tests/expected/cal/1m b/tests/expected/cal/1m
new file mode 100644
index 0000000..f657875
--- /dev/null
+++ b/tests/expected/cal/1m
@@ -0,0 +1,37 @@
+
+Gregorian - Monday-based week
+ September 2006
+Mo Tu We Th Fr Sa Su
+ 1 2 3
+ 4 5 6 7 8 9 10
+11 12 13 14 15 16 17
+18 19 20 21 22 23 24
+25 26 27 28 29 30
+
+Gregorian - Sunday-based week
+ September 2006
+Su Mo Tu We Th Fr Sa
+ 1 2
+ 3 4 5 6 7 8 9
+10 11 12 13 14 15 16
+17 18 19 20 21 22 23
+24 25 26 27 28 29 30
+
+Julian - Monday-based week
+ September 2006
+Mon Tue Wed Thu Fri Sat Sun
+ 244 245 246
+247 248 249 250 251 252 253
+254 255 256 257 258 259 260
+261 262 263 264 265 266 267
+268 269 270 271 272 273
+
+Julian - Sunday-based week
+ September 2006
+Sun Mon Tue Wed Thu Fri Sat
+ 244 245
+246 247 248 249 250 251 252
+253 254 255 256 257 258 259
+260 261 262 263 264 265 266
+267 268 269 270 271 272 273
+
diff --git a/tests/expected/cal/3m b/tests/expected/cal/3m
new file mode 100644
index 0000000..ba9657d
--- /dev/null
+++ b/tests/expected/cal/3m
@@ -0,0 +1,37 @@
+
+Gregorian - Monday-based week
+ August 2006 September 2006 October 2006
+Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
+ 1 2 3 4 5 6 1 2 3 1
+ 7 8 9 10 11 12 13 4 5 6 7 8 9 10 2 3 4 5 6 7 8
+14 15 16 17 18 19 20 11 12 13 14 15 16 17 9 10 11 12 13 14 15
+21 22 23 24 25 26 27 18 19 20 21 22 23 24 16 17 18 19 20 21 22
+28 29 30 31 25 26 27 28 29 30 23 24 25 26 27 28 29
+ 30 31
+Gregorian - Sunday-based week
+ August 2006 September 2006 October 2006
+Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 2 3 4 5 1 2 1 2 3 4 5 6 7
+ 6 7 8 9 10 11 12 3 4 5 6 7 8 9 8 9 10 11 12 13 14
+13 14 15 16 17 18 19 10 11 12 13 14 15 16 15 16 17 18 19 20 21
+20 21 22 23 24 25 26 17 18 19 20 21 22 23 22 23 24 25 26 27 28
+27 28 29 30 31 24 25 26 27 28 29 30 29 30 31
+
+Julian - Monday-based week
+ August 2006 September 2006 October 2006
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 213 214 215 216 217 218 244 245 246 274
+219 220 221 222 223 224 225 247 248 249 250 251 252 253 275 276 277 278 279 280 281
+226 227 228 229 230 231 232 254 255 256 257 258 259 260 282 283 284 285 286 287 288
+233 234 235 236 237 238 239 261 262 263 264 265 266 267 289 290 291 292 293 294 295
+240 241 242 243 268 269 270 271 272 273 296 297 298 299 300 301 302
+ 303 304
+Julian - Sunday-based week
+ August 2006 September 2006 October 2006
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 213 214 215 216 217 244 245 274 275 276 277 278 279 280
+218 219 220 221 222 223 224 246 247 248 249 250 251 252 281 282 283 284 285 286 287
+225 226 227 228 229 230 231 253 254 255 256 257 258 259 288 289 290 291 292 293 294
+232 233 234 235 236 237 238 260 261 262 263 264 265 266 295 296 297 298 299 300 301
+239 240 241 242 243 267 268 269 270 271 272 273 302 303 304
+
diff --git a/tests/expected/cal/year b/tests/expected/cal/year
new file mode 100644
index 0000000..616d61a
--- /dev/null
+++ b/tests/expected/cal/year
@@ -0,0 +1,177 @@
+
+Gregorian - Monday-based week
+ 2006
+
+ January February March
+Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
+ 1 1 2 3 4 5 1 2 3 4 5
+ 2 3 4 5 6 7 8 6 7 8 9 10 11 12 6 7 8 9 10 11 12
+ 9 10 11 12 13 14 15 13 14 15 16 17 18 19 13 14 15 16 17 18 19
+16 17 18 19 20 21 22 20 21 22 23 24 25 26 20 21 22 23 24 25 26
+23 24 25 26 27 28 29 27 28 27 28 29 30 31
+30 31
+ April May June
+Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
+ 1 2 1 2 3 4 5 6 7 1 2 3 4
+ 3 4 5 6 7 8 9 8 9 10 11 12 13 14 5 6 7 8 9 10 11
+10 11 12 13 14 15 16 15 16 17 18 19 20 21 12 13 14 15 16 17 18
+17 18 19 20 21 22 23 22 23 24 25 26 27 28 19 20 21 22 23 24 25
+24 25 26 27 28 29 30 29 30 31 26 27 28 29 30
+
+ July August September
+Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
+ 1 2 1 2 3 4 5 6 1 2 3
+ 3 4 5 6 7 8 9 7 8 9 10 11 12 13 4 5 6 7 8 9 10
+10 11 12 13 14 15 16 14 15 16 17 18 19 20 11 12 13 14 15 16 17
+17 18 19 20 21 22 23 21 22 23 24 25 26 27 18 19 20 21 22 23 24
+24 25 26 27 28 29 30 28 29 30 31 25 26 27 28 29 30
+31
+ October November December
+Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
+ 1 1 2 3 4 5 1 2 3
+ 2 3 4 5 6 7 8 6 7 8 9 10 11 12 4 5 6 7 8 9 10
+ 9 10 11 12 13 14 15 13 14 15 16 17 18 19 11 12 13 14 15 16 17
+16 17 18 19 20 21 22 20 21 22 23 24 25 26 18 19 20 21 22 23 24
+23 24 25 26 27 28 29 27 28 29 30 25 26 27 28 29 30 31
+30 31
+
+Gregorian - Sunday-based week
+ 2006
+
+ January February March
+Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 2 3 4 5 6 7 1 2 3 4 1 2 3 4
+ 8 9 10 11 12 13 14 5 6 7 8 9 10 11 5 6 7 8 9 10 11
+15 16 17 18 19 20 21 12 13 14 15 16 17 18 12 13 14 15 16 17 18
+22 23 24 25 26 27 28 19 20 21 22 23 24 25 19 20 21 22 23 24 25
+29 30 31 26 27 28 26 27 28 29 30 31
+
+ April May June
+Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 1 2 3 4 5 6 1 2 3
+ 2 3 4 5 6 7 8 7 8 9 10 11 12 13 4 5 6 7 8 9 10
+ 9 10 11 12 13 14 15 14 15 16 17 18 19 20 11 12 13 14 15 16 17
+16 17 18 19 20 21 22 21 22 23 24 25 26 27 18 19 20 21 22 23 24
+23 24 25 26 27 28 29 28 29 30 31 25 26 27 28 29 30
+30
+ July August September
+Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 1 2 3 4 5 1 2
+ 2 3 4 5 6 7 8 6 7 8 9 10 11 12 3 4 5 6 7 8 9
+ 9 10 11 12 13 14 15 13 14 15 16 17 18 19 10 11 12 13 14 15 16
+16 17 18 19 20 21 22 20 21 22 23 24 25 26 17 18 19 20 21 22 23
+23 24 25 26 27 28 29 27 28 29 30 31 24 25 26 27 28 29 30
+30 31
+ October November December
+Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 2 3 4 5 6 7 1 2 3 4 1 2
+ 8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
+15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
+22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
+29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
+ 31
+
+Julian - Monday-based week
+ 2006
+
+ January February
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 1 32 33 34 35 36
+ 2 3 4 5 6 7 8 37 38 39 40 41 42 43
+ 9 10 11 12 13 14 15 44 45 46 47 48 49 50
+ 16 17 18 19 20 21 22 51 52 53 54 55 56 57
+ 23 24 25 26 27 28 29 58 59
+ 30 31
+ March April
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 60 61 62 63 64 91 92
+ 65 66 67 68 69 70 71 93 94 95 96 97 98 99
+ 72 73 74 75 76 77 78 100 101 102 103 104 105 106
+ 79 80 81 82 83 84 85 107 108 109 110 111 112 113
+ 86 87 88 89 90 114 115 116 117 118 119 120
+
+ May June
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+121 122 123 124 125 126 127 152 153 154 155
+128 129 130 131 132 133 134 156 157 158 159 160 161 162
+135 136 137 138 139 140 141 163 164 165 166 167 168 169
+142 143 144 145 146 147 148 170 171 172 173 174 175 176
+149 150 151 177 178 179 180 181
+
+ July August
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 182 183 213 214 215 216 217 218
+184 185 186 187 188 189 190 219 220 221 222 223 224 225
+191 192 193 194 195 196 197 226 227 228 229 230 231 232
+198 199 200 201 202 203 204 233 234 235 236 237 238 239
+205 206 207 208 209 210 211 240 241 242 243
+212
+ September October
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 244 245 246 274
+247 248 249 250 251 252 253 275 276 277 278 279 280 281
+254 255 256 257 258 259 260 282 283 284 285 286 287 288
+261 262 263 264 265 266 267 289 290 291 292 293 294 295
+268 269 270 271 272 273 296 297 298 299 300 301 302
+ 303 304
+ November December
+Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat Sun
+ 305 306 307 308 309 335 336 337
+310 311 312 313 314 315 316 338 339 340 341 342 343 344
+317 318 319 320 321 322 323 345 346 347 348 349 350 351
+324 325 326 327 328 329 330 352 353 354 355 356 357 358
+331 332 333 334 359 360 361 362 363 364 365
+
+
+Julian - Sunday-based week
+ 2006
+
+ January February
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 1 2 3 4 5 6 7 32 33 34 35
+ 8 9 10 11 12 13 14 36 37 38 39 40 41 42
+ 15 16 17 18 19 20 21 43 44 45 46 47 48 49
+ 22 23 24 25 26 27 28 50 51 52 53 54 55 56
+ 29 30 31 57 58 59
+
+ March April
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 60 61 62 63 91
+ 64 65 66 67 68 69 70 92 93 94 95 96 97 98
+ 71 72 73 74 75 76 77 99 100 101 102 103 104 105
+ 78 79 80 81 82 83 84 106 107 108 109 110 111 112
+ 85 86 87 88 89 90 113 114 115 116 117 118 119
+ 120
+ May June
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 121 122 123 124 125 126 152 153 154
+127 128 129 130 131 132 133 155 156 157 158 159 160 161
+134 135 136 137 138 139 140 162 163 164 165 166 167 168
+141 142 143 144 145 146 147 169 170 171 172 173 174 175
+148 149 150 151 176 177 178 179 180 181
+
+ July August
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 182 213 214 215 216 217
+183 184 185 186 187 188 189 218 219 220 221 222 223 224
+190 191 192 193 194 195 196 225 226 227 228 229 230 231
+197 198 199 200 201 202 203 232 233 234 235 236 237 238
+204 205 206 207 208 209 210 239 240 241 242 243
+211 212
+ September October
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 244 245 274 275 276 277 278 279 280
+246 247 248 249 250 251 252 281 282 283 284 285 286 287
+253 254 255 256 257 258 259 288 289 290 291 292 293 294
+260 261 262 263 264 265 266 295 296 297 298 299 300 301
+267 268 269 270 271 272 273 302 303 304
+
+ November December
+Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
+ 305 306 307 308 335 336
+309 310 311 312 313 314 315 337 338 339 340 341 342 343
+316 317 318 319 320 321 322 344 345 346 347 348 349 350
+323 324 325 326 327 328 329 351 352 353 354 355 356 357
+330 331 332 333 334 358 359 360 361 362 363 364
+ 365
+
diff --git a/tests/expected/col/multibyte b/tests/expected/col/multibyte
new file mode 100644
index 0000000..c6d36cc
--- /dev/null
+++ b/tests/expected/col/multibyte
@@ -0,0 +1 @@
+col: Invalid or incomplete multibyte or wide character
diff --git a/tests/expected/colrm/rm2-2 b/tests/expected/colrm/rm2-2
new file mode 100644
index 0000000..bdd45ad
--- /dev/null
+++ b/tests/expected/colrm/rm2-2
@@ -0,0 +1,3 @@
+a b
+c d
+e g
diff --git a/tests/expected/column/fillrow b/tests/expected/column/fillrow
new file mode 100644
index 0000000..07f9952
--- /dev/null
+++ b/tests/expected/column/fillrow
@@ -0,0 +1,4 @@
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5
diff --git a/tests/expected/column/multi-file b/tests/expected/column/multi-file
new file mode 100644
index 0000000..c0ee32d
--- /dev/null
+++ b/tests/expected/column/multi-file
@@ -0,0 +1,10 @@
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
+0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
diff --git a/tests/expected/column/separator_table b/tests/expected/column/separator_table
new file mode 100644
index 0000000..bf974c3
--- /dev/null
+++ b/tests/expected/column/separator_table
@@ -0,0 +1,10 @@
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
+0 1 3 4 5
diff --git a/tests/expected/cramfs/doubles b/tests/expected/cramfs/doubles
new file mode 100644
index 0000000..5641c66
--- /dev/null
+++ b/tests/expected/cramfs/doubles
@@ -0,0 +1,3 @@
+create mountpoint dir
+create cramfs image
+umount the image
diff --git a/tests/expected/cramfs/fsck-endianness b/tests/expected/cramfs/fsck-endianness
new file mode 100644
index 0000000..a7591b6
--- /dev/null
+++ b/tests/expected/cramfs/fsck-endianness
@@ -0,0 +1,8 @@
+extract from little endian
+little
+create big endian
+bc0b7bbef02765d32e07faa735d2e0c6
+extract from big endian
+big
+create little endian
+4666f0d2b661f9f3962877edabadb210
diff --git a/tests/expected/cramfs/mkfs b/tests/expected/cramfs/mkfs
new file mode 100644
index 0000000..9e62f6e
--- /dev/null
+++ b/tests/expected/cramfs/mkfs
@@ -0,0 +1,4125 @@
+create mountpoint dir
+generate data
+list checksums from original data
+0011a72f38da668f94edfa1d50743e2a ./dir-009/data.009
+0071beb4baa599141a7e446334d58300 ./dir-097/data.001
+00873c875f3461fb9f5baa9a039f218f ./dir-093/data.002
+0120fb81269598438e84f3fe10b24658 ./dir-100/data.010
+013b8ae5c4b011b87b142e5d60645f98 ./dir-020/data.010
+0167791462ffcaba8c221426c25cf455 ./dir-092/data.000
+01936c37169cc786cdc724abbf1961e3 ./dir-094/data.003
+01e5a8bee864f99bcfde91b2f501fa56 ./dir-062/data.004
+024b1d4cb93660f125e6f4783e26972c ./dir-072/data.003
+029c1199d16bc8da2afd2fe1c47b6859 ./dir-077/data.001
+02a1c0a82771c59236eb9f337dd0b4da ./dir-073/data.000
+032cdb1ac223adf9ed45278e64f265f0 ./dir-083/data.007
+03655d081ce567a4d5fc8e0c3dc59e3a ./dir-085/data.006
+0397e01cf6805728256fa9272ab672c4 ./dir-062/data.003
+03a58cec58f7b74c0d8803e5a05da20d ./dir-107/data.004
+03b3b16547b25e9484c516f5e88e5c75 ./dir-089/data.006
+03b4ed70f96d5c693bcf7f5a479ecd9f ./dir-014/data.007
+03d8a4ac5add5a95f3d9cac8f847c8e7 ./dir-023/data.000
+03de2f0958a76e9d01389b919c69ec96 ./dir-079/data.004
+043fa6cba08946ad508ca890a42f0644 ./dir-005/data.004
+04beac49e6d1f1f9067da249f8953fe9 ./dir-041/data.002
+04bf36721c9da55b2fd6780a5a6dcef0 ./dir-012/data.009
+052ac7ff047928a4f1c0d8bf38320483 ./dir-000/data.003
+053b15396096c2751d9e32b186bf0948 ./dir-035/data.005
+058879e070d51c1e2487d481f9c43b78 ./dir-071/data.007
+05bd438d7a151ebec24cceffb792c3bb ./dir-104/data.009
+05bd9b692ef2ff2c3e2e22a582bfc25c ./dir-021/data.006
+06492dee50157f379eabbe811bcb5ac7 ./dir-073/data.009
+068c724e76dba0c887c5323de7b7a434 ./dir-021/data.004
+069379abfd9f26e203c53923443e58a4 ./dir-094/data.006
+06c36f5db0c02127dbbca75c5d7c130c ./dir-104/data.006
+06d219d83d0d2142e9f7a06372e82f81 ./dir-110/data.010
+06df718f885fd71f2568940b616528c3 ./dir-059/data.001
+070178230ea47e90d00f9a6fa1975fd2 ./dir-079/data.005
+072c1d1755a4af7855dfea3c68cf270a ./dir-065/data.008
+07cd767ef24d4ec057ab98d0b4b388a9 ./dir-091/data.002
+081029b7d8bb27f6c4f79a2e4ba67d85 ./dir-070/data.005
+08268088254256c25894c6d76902cd61 ./dir-037/data.007
+0829c20c81113eec0759e5fdd74b1d3e ./dir-056/data.005
+08310ad78cbd3d6ee1864e5c145248d9 ./dir-103/data.001
+08478c7a523a8725107ad804a7dcda1e ./dir-096/data.003
+08763d238e02d7ab57d762b58038e38c ./dir-054/data.000
+08f96bf68eea8b82bce1a5c1565075be ./dir-060/data.003
+090ed88036a9618e4c44858db399793d ./dir-044/data.008
+092baa8d2659ed94803e652be4c8afe4 ./dir-099/data.009
+093d2d4597015cae42df7d3e2e3bf802 ./dir-062/data.009
+096b7a4f67a561fa2933bbefba032c67 ./dir-025/data.010
+099bf4107ae009497abf52d6d08f5b36 ./dir-013/data.006
+09b4f5a2b49ceba752a604297ab60635 ./dir-049/data.006
+09ca2509b418b5721188ea044ef6b4c2 ./dir-062/data.005
+09d6a844a0f194f884c8bfa6ed830a0e ./dir-106/data.007
+09d9867f561d35d2de37d9ae29400ee0 ./dir-084/data.001
+0a4f9161096ecf8ff8397cffcd9bf2c7 ./dir-000/data.002
+0a54f2a8347cad7e806cd0280b617463 ./dir-017/data.005
+0ada042828a700ad2489a23473d8e90e ./dir-003/data.004
+0afd3b49f16d29ebbc6f479a39ce7bfa ./dir-037/data.003
+0b0fb72f03db99cc722d4aaf2a98e5b6 ./dir-010/data.005
+0b508b5021efe48abeafb59bce6a3f6d ./dir-094/data.009
+0b938f0fe7bbb651b1d25f7763ae6d52 ./dir-052/data.004
+0b99746f048b6e421a452e930253bb15 ./dir-056/data.008
+0baaaee1ecaeb5f9cf8b7567afd4ef89 ./dir-026/data.001
+0bbccf04109b26f8d4f1cccb00f727e9 ./dir-053/data.004
+0c1e3c869b0adaa7ce93879a151776df ./dir-001/data.006
+0c8211ef42d75892c707f022e2a7d452 ./dir-043/data.004
+0c9298aefe72004d34643eddef8f4f1f ./dir-109/data.007
+0cfcc152235ac2f1569c390084b6d442 ./dir-012/data.006
+0d13557f56667831a853d422f40cb88d ./dir-014/data.006
+0d3cd9b22b91391d17c30e79fc892a62 ./dir-062/data.008
+0da117532cade43a9b42b681dbb4d97b ./dir-047/data.000
+0db8aea5ecef040742e4d9b3baa76dd6 ./dir-030/data.001
+0dbac1d697cc77685e1fb884916c1ae5 ./dir-026/data.004
+0dbded4d22453c74ed8ca876c759c1d0 ./dir-025/data.006
+0dc89ad916055c7321ad89e135d5b565 ./dir-051/data.006
+0dcc1bb5b8c671fa906a4c027f781149 ./dir-002/data.008
+0def9e49d46f81887afd6004ba27966e ./dir-017/data.003
+0e12577e454a44866f54f99738637d3e ./dir-059/data.004
+0e20a7189f0a9d2435f3bca1c3a6111b ./dir-053/data.003
+0e387d4e1d2669edd5527676dc5aec88 ./dir-092/data.001
+0e4d615c2aafda7ca9e24ce5c4637047 ./dir-046/data.006
+0e64c356b46f76923195fd49d452cda9 ./dir-092/data.004
+0e8d99a3b34733488d4d0e91837ae625 ./dir-010/data.003
+0e93cb8206b3d92c6b377f5f0ae6c3ca ./dir-101/data.008
+0f048b9bda6f694d90e961a5f83ae200 ./dir-039/data.009
+0f5cdc65ef8473f32533e3f56dca2ea4 ./dir-039/data.010
+0f99dffbb780bf4ac5381f2f14782a6e ./dir-041/data.000
+1029e912f6ecc9305585e8333d71602c ./dir-101/data.004
+103b8e299b6ed5b47d5eb6af7d04d85f ./dir-001/data.008
+10417903b3128497ffae512e9413d2bb ./dir-069/data.000
+108c615627e3a2874ffcd0c7daf93fab ./dir-049/data.002
+10e6e1097c9a4c17aeb211a2920e872a ./dir-080/data.010
+10fb5da04134c663b0554af084e2a7ec ./dir-095/data.000
+114f6bc0fcd87635a6bf304008e9b5c4 ./dir-093/data.000
+1151ae62db155a01571d7c79ee9307d3 ./dir-002/data.010
+11b3dec2bff965af6b36670dfd7ae573 ./dir-056/data.001
+11e361b75dffbe0ed09cda638d87e2cd ./dir-047/data.007
+11e9c06c0d7c355f1bb0bf8ad3376acb ./dir-083/data.001
+11fb59cb3557081ed7219666b74374b4 ./dir-004/data.005
+1251803d9b31ceb1ee2900a8407c762f ./dir-018/data.004
+125f71c5016e92b3659070ed04f58be6 ./dir-060/data.007
+12aa5d0dac0eb51e7d22b88246282f03 ./dir-093/data.006
+12cfb3af86b7cc141a3fe9a6268726a5 ./dir-024/data.005
+132af7005255cc4b038ad9021eca3840 ./dir-066/data.005
+13c8eb071c8e8bd68421d37f925601e4 ./dir-016/data.000
+13dd14e55cda92def6f11db482434a00 ./dir-022/data.008
+13f67366ee5c8adb40e80d3a5cd17fb7 ./dir-066/data.001
+13fb236e5f27b789fc31f1cf5b1b8892 ./dir-015/data.003
+14506c18804debcebf27a377aa04eaa6 ./dir-087/data.007
+14528bfaa0a1aca63cbc80acab96f800 ./dir-051/data.008
+148cf5c5feb722092441ec87b7a5611a ./dir-025/data.007
+149b7674a92796bec7f6066bbdef9a3c ./dir-027/data.007
+14da08b2d85bfc81c0b0b92817989791 ./dir-033/data.002
+1500a4c5054d87dd61c392f33868da4b ./dir-038/data.010
+15987cb3da62f45c7aee7a0ab9518206 ./dir-089/data.001
+15c05327f337c7d7414d472fa770ec3c ./dir-038/data.003
+15ccd5a312eb772c85a44a63099322af ./dir-045/data.005
+15f30a3264c0f8c57e6d7497a4064fed ./dir-100/data.003
+16156718becebf0f975136dca6c6ae56 ./dir-042/data.005
+1624d2a4ead61cb3c8e25c21794ea679 ./dir-106/data.006
+168b97bda8aa6f795d8f7272194d1d5a ./dir-020/data.006
+168f7eb82dd7eb78c4a5221d2e581dde ./dir-065/data.002
+16cf8c6acd3cd1ca2fc4bfc9b543982a ./dir-007/data.009
+1714933b11a4a8e600057565866ec423 ./dir-080/data.009
+1745656f9601fbd5163144500eda6568 ./dir-057/data.004
+179353ce148c37425d766ea5b43dc32b ./dir-023/data.007
+17f7787457e5fd1a8601dd2375eea777 ./dir-036/data.003
+1815c6317528cafd2a1e61429d29e1cf ./dir-008/data.003
+1836fd39b05d94a860d727f972a18729 ./dir-029/data.007
+186992572e97dc0a3688b2202c066a70 ./dir-066/data.008
+18b4a437d81acf594cc1482031987f61 ./dir-058/data.009
+18d978c6f54b50bacc51b5be2a6ba6de ./dir-051/data.002
+18edf33da2c7e85b6a2d54b04f79665e ./dir-093/data.009
+1947681ebdb65cfc6a48556ea9d923d9 ./dir-023/data.005
+1969ecd225b9d6fa4029bf673dbea4de ./dir-036/data.007
+19a34f8c9016cea8d58f02b816d4475d ./dir-065/data.003
+19c3f7ba63f64cd6e84d28e974834101 ./dir-012/data.002
+1a35e19c6fab4fa1d818e6efb79a7b18 ./dir-052/data.003
+1a92fd5a4821e924461429577491407d ./dir-002/data.001
+1a973f2c00d0090607a05d608b81897f ./dir-088/data.005
+1acdab480c52a454ba5552c29516d933 ./dir-073/data.006
+1ad17c4603609a36a704914e6f91d1e6 ./dir-034/data.002
+1b1ddfb88f0cf37d96a44edeb26629f9 ./dir-043/data.010
+1bb53747be6ad8a3e7da57c60ae54bf4 ./dir-047/data.010
+1bbb6b1ea7806b92e431aa481ba53256 ./dir-059/data.009
+1befcc0040c6a3b7e936a89b7dcc8d1f ./dir-054/data.003
+1bf3d96c63f0825a0238b3c711b2add1 ./dir-104/data.004
+1bfe6367c46e50e34f9f68debe2fd9e5 ./dir-062/data.002
+1c05f31466a6b05f1d73120760421b07 ./dir-017/data.002
+1c100fa4a99a635b39826fbf32a185ea ./dir-046/data.000
+1c4070f6f2506a5d59dac63579db5c5f ./dir-009/data.010
+1d286ac5a7f4477b07cbf2b8fa608f31 ./dir-022/data.007
+1d842f952850ecb07b9f8ab59cdbbdfc ./dir-074/data.009
+1dabe77be130077a1e2de7b1b243638f ./dir-108/data.001
+1e4b90e70c5531193b82cc3b615853a3 ./dir-083/data.010
+1e4b99c0c6c97cbe59c01b6b81cdd55a ./dir-000/data.004
+1e6fd4ee4737ee447ade2165104f4dc3 ./dir-044/data.001
+1e82a5e977e75d6ff12ba4e4b8121994 ./dir-025/data.001
+1f0a7ad9330818153e6d13705389f506 ./dir-098/data.004
+1faa10ff54c51e9e6a691d2020b28180 ./dir-013/data.009
+1fbafd0531f5dbf3e84a85c3afef7159 ./dir-091/data.004
+201882708185fd15ab164826e7e4ab3b ./dir-007/data.005
+2028e25ee7ea2410b05c96e2531999af ./dir-008/data.009
+204f64ca934489c9c321b7716abe6137 ./dir-013/data.010
+209ca1185749f5f760f3c2b1eeabcf94 ./dir-080/data.007
+2104bfa0d5cc81662f0f251dc88ed1f0 ./dir-002/data.007
+213356c6e050aa1f44fdb67554d9987d ./dir-100/data.006
+21ce95875b349ac8c4a5661ec7fb1c5a ./dir-108/data.009
+225117899bdd50b6fd754fac468523e6 ./dir-046/data.004
+22c7c4d61b254e67bfb62292f6813300 ./dir-006/data.009
+2305cdd515ea03e0e3d9dd7893c48e5e ./dir-093/data.007
+2343947bcb2aca5a583434e20b9afe83 ./dir-031/data.001
+237c5d3b7a556670a119b6bedf4a7a44 ./dir-064/data.005
+23887fc97d5de846dbb9b26fe48560e2 ./dir-105/data.003
+23e98c99c14dc74bf33f40f8438d5947 ./dir-035/data.002
+23f2dcf6bb0454fd2058442ab6c92b32 ./dir-059/data.008
+23facd50784b91efe2e5e81678bf04bb ./dir-069/data.006
+242be68b3720e5868e7f7652da5af043 ./dir-006/data.001
+24a863973f8ef674b357e1189b40de69 ./dir-060/data.000
+24c9f4371c9367eb54479198db061748 ./dir-070/data.010
+2537510cef5e66126ab4a5f2038de98b ./dir-011/data.004
+253e7dc0307e545fb44fb5e621883895 ./dir-002/data.000
+257394c9dca3db7e737ffa1d0419317d ./dir-074/data.000
+2585dcfae46bc4c444f34416e48da371 ./dir-050/data.009
+2595c5d5f15648f5b784cc327a0b9480 ./dir-077/data.010
+25d83de09d075036c37f4fa4084e81f3 ./dir-066/data.006
+25dabb63db7e69e49a20078e3f1c7398 ./dir-103/data.004
+265905e58360d4ee4cabe7fa24eb49bc ./dir-086/data.007
+269bc4b7f4d16c66907d450356661b6e ./dir-088/data.008
+26b6a74e3dabfd3c9a465f7053387f19 ./dir-013/data.000
+26b71d2a0e43c9837d567662bf9c7a01 ./dir-036/data.006
+26ba9e7bf1ffa275602ac235642aec22 ./dir-063/data.006
+270c63b19d9b4c9866df1a7a9d964ba3 ./dir-058/data.001
+2747d5dfdbd4f5ce76642911fd1cd7ba ./dir-037/data.006
+275719a7d2e10fd0cc0dbd406a5dd284 ./dir-030/data.003
+27974aa4801a7c3af842899272b9f6d5 ./dir-032/data.002
+27a1a827d803996650be7554790209bb ./dir-098/data.010
+283c9f8d3dc59cff4850ca6d976545d0 ./dir-010/data.010
+28503c859c89b5d9953f5bf084b44409 ./dir-096/data.006
+28ba83018c7f8d79a4bfb2aa94ecf777 ./dir-107/data.007
+28f2c7408277657e4c2c5b2e8017bcaf ./dir-088/data.006
+290616007d76bbe05a61c73693a9b070 ./dir-001/data.010
+29092e94be3e74a246c24383f920753f ./dir-035/data.006
+2957ae96634044a42bbc4bb0707cd202 ./dir-067/data.006
+2a11d7eceb35d8ff8248f0ec67a4ee55 ./dir-004/data.002
+2a39f7493e5646a38e9f71eb202dbc2d ./dir-029/data.005
+2a4b4ff47d7ab9711757637f480c0586 ./dir-096/data.004
+2a5a748d65991f63f6da39a97a22ccfd ./dir-108/data.000
+2a8860739f9d2dbda65e4d852e0fd309 ./dir-076/data.001
+2a8d705b90b82af455acfa7d9c0fc3c9 ./dir-069/data.009
+2ace4b0d8ef122bd918e8d538714ee73 ./dir-084/data.002
+2b08c2f1783f865051369bf41b47f960 ./dir-023/data.003
+2b31b68d17ec63b0e1a50176c49030e4 ./dir-076/data.007
+2b360e9c50225e1ebf8bf95fc0939e2f ./dir-006/data.005
+2b545e6e6ca3b6638b618c34aaefdbf2 ./dir-100/data.001
+2b5d18108e0309354b4f80b185e2323a ./dir-057/data.010
+2b82448e6fccac3441d9f7d7a13074d4 ./dir-031/data.007
+2bcc2819a288ee4ec2c9c00c585f67d9 ./dir-027/data.001
+2cbc9b3922e5d75a8c4e575e53065f2f ./dir-109/data.000
+2ce7c9d5e1a4aed1e9dec1aa85021f4c ./dir-010/data.006
+2cf7c6e038d3744275d8ffb8b4ab52d0 ./dir-096/data.001
+2d0494a350a570bf86596eb5dcd3e575 ./dir-059/data.007
+2d1cae3d5151bebe12ae7d97d9efb92d ./dir-008/data.004
+2d27ec0d318cf56d8ecc226a972db677 ./dir-027/data.002
+2d392a7b3dcfa6ee1399de9416a41b60 ./dir-083/data.005
+2d4433b6e32bda8e563f042fb799e86d ./dir-110/data.002
+2d70c129d857d22a8266c2e5f3ee4563 ./dir-048/data.001
+2d76b9784bbb68c670aeae134f1c6c32 ./dir-095/data.001
+2dbef0445d1b450b88b9e5817741f295 ./dir-072/data.002
+2dc184e8ece7744de9912d4671f2f116 ./dir-044/data.009
+2df5877dff7f77e48aa45bb96de9f362 ./dir-071/data.010
+2e03f7b258d00c0c5ff10425a701b457 ./dir-082/data.010
+2e0bf9030092dd77ed44cd7a25497496 ./dir-072/data.006
+2e0ee79666904e3629c801f2e39eeef4 ./dir-009/data.001
+2e43ada234775adb77188a840eee1525 ./dir-020/data.009
+2e648a138f04daba3ec30d9ee8502a03 ./dir-028/data.002
+2e90cd54f80352ec7d03fa98737245b5 ./dir-034/data.009
+2f253cb5c065c90cbc5d6667413862a8 ./dir-066/data.009
+2f51608cd1c0aed64f2b0b65fa1020c3 ./dir-025/data.009
+2f8d68bc8ec1c5db8ce2f70c87f91e68 ./dir-067/data.003
+2fa01a6b14ea91c02460c0beb70f69c7 ./dir-003/data.005
+2fd76fadb124c701e852763131480457 ./dir-009/data.007
+301e96925429a577cffd3805c2b6781e ./dir-060/data.005
+304d034c10c3f2e8659b25049028dd60 ./dir-104/data.003
+305eb027ab22375e29f6ce544fbd07bc ./dir-063/data.002
+30a44eacd0af674f1725fda3b7448f4d ./dir-101/data.009
+31179c50bc1553cce235c9aa625c16ae ./dir-105/data.010
+313fdb8585c16ffdeb009c0d3256a3b1 ./dir-078/data.000
+3169cdf524ba2005644d09ce2d72d694 ./dir-100/data.000
+31c5b7365750ca7fbf789c4ca325018d ./dir-107/data.009
+32928650dc72f8810007effa8db00119 ./dir-035/data.008
+32af92e23e453c72417acf56d3ab6fde ./dir-033/data.007
+32cf1dfcb9bd72353f46993006cb2d0c ./dir-003/data.007
+32e3f72b1fca5ac3176e8dbe110e757a ./dir-104/data.005
+3398bf733d4d26a7a8304740381a8333 ./dir-036/data.008
+33e82dbebbf710a1b203655510443ff1 ./dir-037/data.009
+33fc502a0d0616f76551446ef1965c30 ./dir-065/data.005
+3481e8b218141e6e6dc9b75296508b15 ./dir-033/data.004
+34a1997ca886d7c13ba4936f4c8e0daa ./dir-019/data.005
+34c9936c46a847152125e583839c12c6 ./dir-043/data.003
+34f102b63e5308964e2f9725caf6ec2c ./dir-088/data.000
+34f1627786d8d7715842af2bcbc92dd8 ./dir-022/data.000
+357671e20f590900a3869bc29dbee1fd ./dir-051/data.009
+35d3a1bd5dd1a3f7d0b50fb2c5406645 ./dir-039/data.003
+35ecc0144bca35f519985aaa15be26cb ./dir-106/data.004
+35ffbe6e62da5b0ae9c06363600b0715 ./dir-049/data.000
+3603dd8c1f2346ed0770aa548513eb34 ./dir-024/data.002
+361b845aa30dbd442cf2f0b87ad4741a ./dir-055/data.002
+361fd9b6648f95ff7eec8d717d179bc0 ./dir-089/data.008
+36270a415097865dba68478f69628db1 ./dir-003/data.006
+3653a989b9764b2fd530324a98ec8218 ./dir-067/data.004
+36551af77706ae56dc228c1151caa7a6 ./dir-062/data.000
+36b55f77570d1b46380d6018f52661e7 ./dir-109/data.004
+36d68b9cfc51aacce08065d37eb500c6 ./dir-102/data.003
+36fc31babad89ef26acd0337a79286d3 ./dir-049/data.004
+3704c5fd6a446d530bcca18004f2b31d ./dir-081/data.008
+3707760798d4e50da70bae0e8d2c4c28 ./dir-095/data.010
+371719fe5cd052be2a63c6444ec77413 ./dir-044/data.002
+37594be41d8293c0351865a708e2af05 ./dir-063/data.007
+3790a2bce420a800ff76ddc55d4c0d0b ./dir-086/data.001
+37d9e0f2d9a39dbd9fb06c4dbc1d932e ./dir-065/data.000
+38131b5fcb1ba7f74bc3fb89091d67fc ./dir-104/data.001
+382085df5f142fde02b492569b27f7d3 ./dir-078/data.001
+38307eabf1109b786760384dbe7013a2 ./dir-074/data.010
+383aec3d236bde3134bbb811487594ae ./dir-071/data.006
+386bd313b7144bdb7121d9d3cffd8019 ./dir-095/data.002
+38837c036576ad2afb1382e10d229658 ./dir-109/data.001
+38993a904f2d37087a5c4ed413d331d4 ./dir-081/data.007
+38d82c4bbcd2def41636f02151bf5319 ./dir-084/data.004
+392ccf5865fdf0dcfa599034934e4fcf ./dir-072/data.009
+392d6c23d5b6a58ba4553cfef5245191 ./dir-109/data.009
+3973246571d48f5fbe9ddc337ca2c8c9 ./dir-017/data.001
+39de945a763bd83bde787879294c9b49 ./dir-005/data.002
+3a4f397262e2b830fbaffed4d03b37e9 ./dir-016/data.002
+3a8363fc39e4211afe3ede5688f94705 ./dir-077/data.004
+3a897a684dd2b32b4fcc2275988fd080 ./dir-018/data.008
+3a94ca85ac994f47e8010011fc5c9582 ./dir-000/data.006
+3af8ed9c599b06ff2d99fe5563380c30 ./dir-103/data.003
+3b1922fb43fb222b573a9f44bb805e0d ./dir-029/data.009
+3b72b8b4984cd51e67ed03f59da716b0 ./dir-023/data.004
+3b8a656973178c5815451d8c64fa1d21 ./dir-009/data.002
+3ba72c45fd0177d48f6a7a5121fab5a5 ./dir-003/data.001
+3bebd9b6fa4aeb9772ca238fb88ddcf4 ./dir-073/data.010
+3c99ce08823c1c1b24e1c77574cb7bdd ./dir-075/data.005
+3ca50a374e0c46ccc35caba06244a592 ./dir-073/data.004
+3ce0c739083cc21ae6f19eb377258fb3 ./dir-097/data.006
+3cea42052a833a1c65ab6d3de7db95ff ./dir-044/data.005
+3d05c1ebb7adbd72eae064b2b16ed5bd ./dir-015/data.008
+3d362d4af7ac442b0be8a6e1eaed1222 ./dir-058/data.003
+3d3fa69ef78ff4eec72c4a7d62d44320 ./dir-057/data.001
+3da10311ab35b313bcea0b3dcd3ec320 ./dir-085/data.007
+3da5bfc1f121da4a35c5c1a26bdf2871 ./dir-080/data.006
+3dfd203b61606012e3fe4d794026de45 ./dir-060/data.008
+3eb835385bbaa4c12dc66ad5a5787ac3 ./dir-110/data.003
+3ebf14bea5f774ed68dc3aaecfd4c7a7 ./dir-086/data.006
+3ecabfe3d7e0f39d1b77feb30bb2149a ./dir-108/data.006
+4017217c1fc3620f00a63bf7451d7d58 ./dir-011/data.005
+40565e6e9eaeba9538e068d7fc212025 ./dir-030/data.007
+409803908e1249d811421fdf5e7221aa ./dir-011/data.006
+409f1a5df32b48cc615b80f895333125 ./dir-070/data.006
+40da236dcfb37628a7383f110a34ca91 ./dir-018/data.003
+411bceae3a164955533dbad618dcdb19 ./dir-042/data.000
+4129b05173c9dc800c811c1c6ab554f5 ./dir-046/data.008
+412efdab02674ab591ee02c1e5f31d0f ./dir-102/data.005
+41315d3d575108a52e0fc5b07c503177 ./dir-034/data.001
+4141aa05325ffb5c530391d899cd2bcc ./dir-099/data.003
+4174e6169d645307ca8675205d40c853 ./dir-004/data.009
+41bcffb4e71780db8fed9818124e5b6c ./dir-063/data.003
+41ce67b35ee64b9e86c13efcfdd26ce3 ./dir-050/data.010
+434b0fa579b255430214de352151d112 ./dir-041/data.008
+434b26f00c175f276a54105171251d52 ./dir-106/data.005
+435ca233503eefbac946d3ca654f9cc0 ./dir-072/data.010
+437ba3bb8dbb675b158dae0f59d6a445 ./dir-061/data.010
+43c49573357ed53dcc2e364ce112b62d ./dir-061/data.005
+4404b6e4f59a841fe9a3ae2e41c4c488 ./dir-071/data.000
+4426aa424dd25ce972b63b5c47b9530f ./dir-090/data.006
+4448d6c8b60d7a4b08b534ac1059d668 ./dir-089/data.002
+4472ba00b77a4dce904589c457b1bc97 ./dir-106/data.001
+44861e8e164ea51709c069fa286134c6 ./dir-056/data.002
+44961468f08ee80c619adf0154e96a9f ./dir-101/data.010
+44b702805a58f14493bae3c2f2716dc7 ./dir-088/data.007
+44c7d952d5b9528c1263ed11b5dc2ae5 ./dir-012/data.000
+44c825fbf1d23fcabf45e42e395423cd ./dir-085/data.008
+44e3ec8f10255d109773f3204a5020e9 ./dir-022/data.006
+45034f1052987e5d9e2d4bc0f463ec7a ./dir-025/data.004
+451ee4f9e926765a2c07f89b1a2fe078 ./dir-000/data.007
+452b4b43200d2ece30016ae96415718a ./dir-084/data.009
+4535f5d99abee30fe2e0d67098dabc62 ./dir-098/data.000
+45622ac4ee28752eb56eaccfb5462c50 ./dir-016/data.010
+459ba24d0e03a81f8f6ed35700f46460 ./dir-101/data.002
+45af2dca2eebc714cd0ad63f77ceaaa6 ./dir-040/data.008
+45be06fe6e509b43b6f68c52835d54b8 ./dir-016/data.003
+45c250d9570716010f4161f1bff5e450 ./dir-026/data.005
+45ed7a5a54578d5985153ff70330c228 ./dir-011/data.008
+45fe9fcae165a9d88afa27fc3c933406 ./dir-095/data.008
+461b0786590556a5729e1e23512db49e ./dir-037/data.005
+4647cb2043f623bae8860e7e8b58834a ./dir-013/data.008
+468171cdd32b0e94c96a9be1f298738a ./dir-044/data.000
+4690dd33ffa2329e5bc456ca24ec7f72 ./dir-031/data.009
+46f75198e440d8dfb43207eb4965c2c6 ./dir-028/data.006
+4710eacd6b6df6fc6ac2da5ebca94546 ./dir-003/data.009
+472cf0ecd1b1691bfaa8d5fb86c21366 ./dir-075/data.002
+47344f3f3f3a806ff636267eb39369e0 ./dir-082/data.006
+47d6c7304f9210ee16dc2dc5fc2a95ed ./dir-048/data.005
+4829f629b1e545f4cf68f50e9f5e6209 ./dir-022/data.005
+484a291638f8224eb40442351f3e7f41 ./dir-054/data.006
+48e42891bf2fe053538884127b0a50ce ./dir-021/data.001
+49077e5943a100b6771a44be07704a4b ./dir-010/data.001
+493e84baf6c02b38324071c87f0afb4c ./dir-024/data.003
+49a02c341e5de4bfd938ea0326ddd811 ./dir-096/data.009
+49b11279f83f22ff537134bbcc84ff92 ./dir-099/data.002
+49d6ab85b50ab5386f8282a7b98a2083 ./dir-026/data.002
+4a1113a862eec6fc1a29a75a985f02ca ./dir-044/data.007
+4a209585e44265cb0f363756602fca0c ./dir-027/data.010
+4a3a6543fefb560f2383615d905a6a96 ./dir-053/data.007
+4a4c1cc3c778ca8a5ece35295591c423 ./dir-089/data.010
+4a8a0e0c68ee95b541bcf37ceb6fca38 ./dir-032/data.000
+4b7be12f2afafa942663af88a2a34797 ./dir-107/data.002
+4bdf8bf31569a06880b85e176703d3c5 ./dir-038/data.009
+4bf489ff656fef7ba0f643ce64f3abc0 ./dir-038/data.008
+4c010f92cfd01db492b981f234a68437 ./dir-015/data.009
+4c7badffa374dc118c81ff0d04f316b4 ./dir-032/data.007
+4c8f651cae18db445c8bb03efaf57622 ./dir-055/data.006
+4cb4c1f1d3bbf4fda768b972661567fa ./dir-033/data.001
+4cbc6cc296c87027ed9695c018ab5307 ./dir-068/data.004
+4d064d4959a79abc8e3d073675d6c001 ./dir-002/data.009
+4d0e137ae9bd6e011cc974daf47e514f ./dir-020/data.007
+4dfae4a9ef4e894b3cd8209a4ae78bce ./dir-068/data.006
+4e0f932047dc3244c2fe215002ea8ad2 ./dir-099/data.000
+4e26ef37e9c5b6925ad2938e9b5d68f1 ./dir-043/data.006
+4e41ff62e105358125e0b0330a042fdc ./dir-001/data.007
+4e45a4b7ccbd79003283b6e47d69327c ./dir-093/data.004
+4e548f34d5bbeb56fa7eb58cb4222837 ./dir-098/data.009
+4eb2096e115b6e2e7639881ce734ca09 ./dir-012/data.008
+4ec96ab3466c9011cd1555abe6992acf ./dir-029/data.002
+4ec9bd108f0df0b186f0777b60dbe941 ./dir-011/data.003
+4ed5125c06e4188a8e73369cec758b9d ./dir-028/data.001
+4ed6c21f5b75c31336cc7873e795ea4d ./dir-063/data.000
+4f14cfa2698af420ae1ae5e40ce45a5e ./dir-033/data.003
+4f3ff759eb10d55898f3b189c6b8c80d ./dir-000/data.009
+4f66d35fac82aa35322ad3cc5b6905db ./dir-001/data.000
+4f898916010eb8aadb72e455d5b821a5 ./dir-051/data.000
+5026fd8e09c8daef0a1da96a28833150 ./dir-081/data.005
+50389a4e73a9a472b5a5c4a8910d7e96 ./dir-011/data.000
+503b514c984dae8ff69f8bfefa824fb9 ./dir-016/data.001
+5048be8c2e8e765ddb63c3b371852b72 ./dir-053/data.002
+5067419869faec43f85c8c327c3d378d ./dir-008/data.000
+50725a5941d26b2947677bfe0c7761fe ./dir-066/data.010
+50771c76a8213245be499adf1d4311d3 ./dir-100/data.004
+5118ac53d3c7b31072833f966efa7e9f ./dir-064/data.006
+5144c4da0e2a374d95ff48a34c3297c9 ./dir-092/data.002
+514b076e0f0511f216379950f2714f90 ./dir-024/data.004
+515ee463937cf2a3ff157b7891f96eb6 ./dir-052/data.009
+516264e6cd37058c67a6791d59482dda ./dir-080/data.005
+51632cb7f44f5bac30f5d6f4a9edec79 ./dir-097/data.009
+516e6bbb96f69262d57f3a660bc801b2 ./dir-090/data.003
+51ce73b1230c06d1539e6de542b63006 ./dir-007/data.006
+51dbe24d360ca38feac1b436754f9b4d ./dir-089/data.007
+51eaedbaf33988a48e6af65a5b117d38 ./dir-016/data.005
+521dd773fc4171de150b5f8995a88d21 ./dir-009/data.006
+52693bd5407a2471cf5156afefdaf888 ./dir-027/data.006
+52731e0ad3028c530bb4802a4754c408 ./dir-008/data.001
+52ddff97b316a494f4737e0614850f57 ./dir-069/data.002
+5301844c968d05257f1e6531e8ce0d54 ./dir-003/data.008
+53763fd0a894b8e121c281cee01f9402 ./dir-068/data.005
+53d4507a2df8d22076d81da5c0100ebc ./dir-008/data.002
+53f5cc09d57af60fe72559eca2f1a603 ./dir-011/data.007
+546662c6282b5d422413f53037df0d54 ./dir-073/data.001
+5482b2507dc94c8edde840b619b34944 ./dir-081/data.002
+54a6b5192a4fb2d1f2b26866d13c05c2 ./dir-088/data.010
+54c3a5328276de092919bf966e9dd7ad ./dir-066/data.003
+54e78419ba7cf291e26f1160bcd09469 ./dir-028/data.007
+55241d2474b0bee70f50e7629fba3a10 ./dir-070/data.007
+553e65cb3ee0a9a5572826ff4401487c ./dir-054/data.002
+55adf518280a54532de6c33c258a8e6c ./dir-080/data.008
+55b8d57f3beec6a8075221f08752ff42 ./dir-102/data.004
+55c76bdb82f8fa4e0d22f9e41ad3ad0a ./dir-075/data.001
+55c8d13f682a62306c8d29746bd7e6fa ./dir-026/data.009
+55d59fcb49c07ef165b3108621f08ab0 ./dir-071/data.001
+55d66d74201a3a3e5b2d53f9fbb52bbc ./dir-019/data.009
+55d891ada51edc5dec3837cba7c5f2fa ./dir-041/data.006
+55de7aed4c69e32378352e6dd9a3e5ce ./dir-057/data.008
+569f645920cb1a54093de547cd92f337 ./dir-085/data.003
+56ef2f747789aa2ab1ef6c7947b50ed4 ./dir-067/data.000
+571ada4c832aa9ed66403352b06a07df ./dir-016/data.006
+574ce2273f4e17cd6739a1772d43fb67 ./dir-090/data.001
+587e740432de54932b49f4b0b1a9d8cd ./dir-067/data.008
+59226032ef2efb991fffc5d2d2a67dd0 ./dir-098/data.006
+592e2927e0468af2a86bb10e2a5cbffc ./dir-068/data.007
+594f1a21b98ca4a8b8981164f46edd0a ./dir-023/data.006
+59a3f6ffb6432a768ffcfc390ba0d5e4 ./dir-005/data.007
+59a5751a44478789aa08853a7fbcb4fc ./dir-035/data.004
+5a034a2cdb1b397b435c7119a725e622 ./dir-108/data.003
+5aabd813ce725146f47bc73d9449b50e ./dir-107/data.005
+5ac445c2b46c50497deb1e2df3987646 ./dir-065/data.006
+5b62c14d607c393885cd0a77b445a0e3 ./dir-014/data.008
+5b8b4050492565d8661a4431c7d9f0f3 ./dir-010/data.009
+5bbac4ec67fa84d40d8a8a4ba9d00d31 ./dir-015/data.010
+5c0252cdd7cd0d144583c673e26a4cc6 ./dir-042/data.002
+5c1840580df0a528059088e45f23f837 ./dir-091/data.010
+5c24175346dc431720a833da4348aa78 ./dir-105/data.004
+5c2e4b18bb6e78ea09b958f03ba0e750 ./dir-068/data.010
+5c4c416cee200ee67bec2029cb56b6db ./dir-077/data.002
+5c535e14b7cd449a40893ee6a22f60e1 ./dir-031/data.006
+5cd631f166a2970f7aeb8960ace0f8ef ./dir-082/data.000
+5d6a823c24460b343c6e1cb74f9bdb8e ./dir-038/data.000
+5d869905fdbd4409d87d484db8cfd7ee ./dir-058/data.006
+5de94c0de3c4688b56b0d2fd2a892b98 ./dir-026/data.010
+5e5742ef3a3e4f4384ecfbd9663a18eb ./dir-105/data.006
+5e5a607a9b6945a1f4d17922466f86eb ./dir-028/data.008
+5e824e0add90548b50e8def0e0ea15af ./dir-051/data.004
+5edaeebaf220564c0f9fae53cab3b8ad ./dir-064/data.002
+5f2ebfc0810170305609aaa17d3b61a3 ./dir-096/data.005
+5f495116cabd24317cff89e1b946f93b ./dir-068/data.000
+5f82c03aee04bbc7b13bbe81d86f39d2 ./dir-036/data.001
+5fb6b749a06a1cd8e9e8b29383bfbf4d ./dir-090/data.008
+5fc369bef72f37987eb22899e8abe816 ./dir-076/data.000
+602dfd7dc13dca72e5cdb2a55d10e2d7 ./dir-005/data.006
+603c4a2b2591514fe3f89847fe45c9b9 ./dir-101/data.007
+6069799fce0384528b5b6f2978a5923c ./dir-101/data.001
+60a16f4eba5fcac35a449692e475ccae ./dir-088/data.003
+60a3276323425d3942c38a9d916fbcac ./dir-039/data.008
+60a658d52f59389789cbcfcaab41a1d8 ./dir-063/data.008
+60d6c79df48202637082c2213d4ccfdf ./dir-075/data.004
+60d87fb1da7baa439822269fd05467dc ./dir-028/data.005
+60f939a750264ce597002a4c5aa38b0c ./dir-012/data.007
+61724bf9d882734d00cbf2174586cf1e ./dir-081/data.000
+61baca9d4f0c0e1ad440f516eeeccf24 ./dir-040/data.002
+61bd0e648bc1911d452de89d4edcac81 ./dir-038/data.006
+61e13adcedfa2dc97c6fb131c48143af ./dir-078/data.009
+62102e0bb6e4a034d0df190864d3034b ./dir-078/data.005
+624fe86964a8866aa072ca98944d1cfc ./dir-072/data.005
+628a3ac4c873a169d8a3fa9df6615f4c ./dir-109/data.010
+62e10821dc2f80b608f7d789fe83923c ./dir-060/data.010
+633726cd4b41178c5506dd2b2eae0281 ./dir-012/data.005
+636f3b4bbc5e0d8b9042f1dbb35079ab ./dir-074/data.008
+637db8942597652106bd84d1c15341e4 ./dir-097/data.004
+63eb33e88241210c050942ca97a576ec ./dir-040/data.007
+64046b982a59442839a2d09b7470cf52 ./dir-053/data.008
+640b550e180d7c42c2d44f2ed2d7a43f ./dir-015/data.005
+642aed69a28a94bc3fa488fc6527b20f ./dir-016/data.009
+64bf70a1cd945cf459a07ec4631eaf0c ./dir-098/data.001
+654eb3426a0cfccbf51d147f29f8eb4e ./dir-022/data.001
+65bd86cae100830f420cb55dac2e15a4 ./dir-110/data.005
+65cedc58f0c41c8fdae422035b3750b8 ./dir-090/data.002
+666402e134e6ff70cba029c9852b0f97 ./dir-015/data.000
+667548fd68810e209ea97fe7b3fca1f6 ./dir-012/data.003
+6675d5082ea5133f6831499c95739594 ./dir-011/data.001
+669ffc163b66fc3abac6611758613a5d ./dir-089/data.004
+671e2b2280638d8e1d3a8f6b1d7ea8e7 ./dir-032/data.004
+675de03baf8db6f80962ed278b6e7a11 ./dir-110/data.000
+67a8ef2542009e755df5c9ac6f853d80 ./dir-026/data.000
+67bd34a30a05eb26b3f62a075cd856f4 ./dir-038/data.002
+67cffaada9805a90b11355402e635cae ./dir-056/data.007
+67ddfa9b4150737deff4914cb35fd713 ./dir-027/data.008
+6820b342440583f51722b9eb61b48d63 ./dir-088/data.004
+68336b681102e16e64f88a95cf470b72 ./dir-038/data.007
+683aa79bd3cdcdac7aa10ad1e2b0e028 ./dir-033/data.000
+6856991caa694e83caf6c0fca0233b82 ./dir-092/data.008
+68a46055103f6e733e5cceb707f6dd0f ./dir-004/data.003
+68e9e651dc7a564de214b282b9b5c757 ./dir-008/data.007
+6907dfe18a37643916742ba964bdab5d ./dir-027/data.005
+693f9c8b20a8a9279c4d43c80c3fa984 ./dir-097/data.008
+694e99f3b5dc56ba062fffe8381f8731 ./dir-000/data.001
+695cdc5bc7ba46e6aa38950daab71636 ./dir-050/data.005
+6967af8156573e442a1b6bd56d0a4893 ./dir-035/data.003
+69c1a52d538a67bf2a7e5c33379533b8 ./dir-017/data.000
+6a1bd41da62d260f746e0b01c7a13403 ./dir-052/data.000
+6a71aa155d598b5ad2fd6756da3c278a ./dir-098/data.003
+6a85596f81522c38c958910a4c0487d7 ./dir-060/data.004
+6aa3bbb45b6231513e0bee62e9a12a9b ./dir-080/data.003
+6ae19e39f7857f176f021a8cfe768a66 ./dir-023/data.002
+6af7255b3318607b1d5a7894d8caac25 ./dir-082/data.004
+6b780e7f72be3df9db712580acafd0fa ./dir-102/data.010
+6b7cadcbf875ee5ad53b47298abfaae0 ./dir-080/data.001
+6b8533dbffebb6ef2c1fd48e1df6ed19 ./dir-050/data.004
+6bc9e3203e2738ee225be6a45da6d077 ./dir-059/data.010
+6bdfbab8a4b20d71aca5aec66cf4c07f ./dir-071/data.002
+6be3c35f28f68861840f0345f70ff511 ./dir-011/data.010
+6bfa83d47d895ac06f74abcdfe24dbd5 ./dir-067/data.009
+6c324e185cf24623b8eab7daa010e222 ./dir-023/data.008
+6c32f3d5d270bf507f57edf28ac20214 ./dir-105/data.009
+6c8cb56bd81e30ebdb0167ea9c37f14d ./dir-001/data.005
+6c93aac45d9e019e7beec4a708a3033f ./dir-087/data.008
+6caf414d04c342f829887570993579d7 ./dir-089/data.003
+6d2229a029fe6481590413f2db98aa02 ./dir-002/data.005
+6d2a24dfc83ec50692a139bb2c4c61d6 ./dir-082/data.001
+6d38deab9a096a0487e9318265837589 ./dir-022/data.002
+6d3a2f17df2c7210851a2c0d52393c0c ./dir-023/data.010
+6d75df376c491371990eb1de004227ea ./dir-067/data.001
+6d931b032c977bd48eece3900cb75cbc ./dir-031/data.010
+6dd22b9dda6d6347c1bd9afec4793a4f ./dir-070/data.002
+6dd7811a0c6fc4d0742d46707145a3e5 ./dir-004/data.004
+6e32a7359307837e8ac9823de823555c ./dir-046/data.010
+6e5cc8f5f8c2a07b9de4a8b781d5b5e5 ./dir-050/data.006
+6e843730df663e5647de7ac5bd45a9e4 ./dir-074/data.001
+6edd462bc21cf66cbcba400669a8bb5e ./dir-007/data.010
+6ee09737e92a796d494ff85721185da3 ./dir-079/data.001
+6ef6e7d86580f5d0f7736bb57e93f4b2 ./dir-048/data.009
+6f314ada6407cc32b1f3e8d903b5c9b5 ./dir-017/data.008
+6f49da0120119efa5e4f89de195b4d2e ./dir-048/data.000
+6f69257227a260127a65a133508b0319 ./dir-109/data.005
+6f86c9c9ddf31fff41a6e48b52e05a06 ./dir-078/data.003
+6f957949973905e40beea6e33e465d0a ./dir-092/data.006
+6fbe3644be2de3423204d79bce06c40f ./dir-106/data.003
+70296c938c1220bf726197fc521c5da2 ./dir-083/data.006
+7047e1b8a6351da3504977a4c96edb72 ./dir-097/data.002
+7051be81c22bf0e394e8d89a6cc78a20 ./dir-028/data.004
+7077cac646a5b37a418664d366de8d2a ./dir-086/data.008
+70c913bbc3454d3af1d3b97a0851b903 ./dir-085/data.000
+70dbb0dcaf2612b4952b341651ad0c1e ./dir-065/data.007
+71214fecdee78675ad95b492df4017ef ./dir-040/data.004
+7171c7a1796cbc2355c6adb03c312daa ./dir-032/data.001
+71841f91ab1c873938ff4b4f018b2221 ./dir-014/data.002
+71a2294412b3029f236a254cb335ac98 ./dir-103/data.008
+71a6994ef2bf8368aaa2362bcfccdca7 ./dir-019/data.007
+71b4da91bd5142d3342d67d322fef2e5 ./dir-084/data.007
+71dbfc9057fca54a5a183446775e32b8 ./dir-016/data.008
+7214fcff02d0743210d754a37fb98b0c ./dir-102/data.008
+72ce0ff3d78837675c538e6a02a67557 ./dir-068/data.003
+72edc28e71c24a8c04faaa3c2645d936 ./dir-064/data.003
+72ee0b7f236d0c1de171c8618a8e8c7f ./dir-078/data.008
+732b1e0f0ab56898793589bef25f29f3 ./dir-017/data.006
+73bcb49ca5ca609cbb65147cfd405f3f ./dir-105/data.001
+73fd28f9099c39d6d2c92355c060d6ed ./dir-068/data.009
+74374dec8765151f8270209dca6fc5c6 ./dir-098/data.007
+7502ae05db65a32459a2b97996419065 ./dir-046/data.005
+752e6e003b2a63ee5329d9629fc11e37 ./dir-066/data.007
+753b5b925a36ef26874b53df2ebfa061 ./dir-075/data.006
+753e065141176ff596bf2e1ae61ee7eb ./dir-051/data.007
+756432d8f72aad038e5485bbe24bafaf ./dir-106/data.000
+7565d1674164a015c42a2f5011cc087f ./dir-000/data.010
+75aeb3ea4fbd1d50430bbe04e2932b16 ./dir-093/data.001
+75b713f785ac4a9b1d088421f23ed1dd ./dir-008/data.006
+75df7f36eefa42c3638bc5b6a97d55cc ./dir-062/data.006
+75f4acedcce3de89a05b4c098b4f8118 ./dir-084/data.000
+761c8e415dfea226f53be2957780ba69 ./dir-000/data.000
+763c7d41210a0ca975eb99d0e17f4b20 ./dir-058/data.007
+7652846932bd547c814ea86462891fe5 ./dir-036/data.000
+766be2a004cea2f84f9aeb40eb9e5124 ./dir-006/data.004
+7672a3a631d8cebaeeb10b4eeee2f374 ./dir-097/data.010
+767d0c476c9468d63e0871af2cef1738 ./dir-060/data.009
+76c9efefaa60ee3fba78597b33c5f575 ./dir-090/data.004
+76e0a18196e6b9e8f1860791d5e70146 ./dir-075/data.008
+771b05fea5ba6da4cdba84683c070c95 ./dir-053/data.006
+77586b0c211ae906be9094d049370678 ./dir-021/data.003
+77c306d850bed70af9a433a685820431 ./dir-050/data.000
+787d7e089b2520fb323825c0f34f1019 ./dir-047/data.004
+789ae7e99a3a3ff41688d0da0baa5491 ./dir-049/data.008
+78bc020188a5927d1bdd8a00916e7bdc ./dir-047/data.003
+78e4a29d866eeee6f16dac2923ff9039 ./dir-020/data.002
+79adfb3d2a7487932511a5a4279b61d4 ./dir-027/data.000
+7a27a666e2737841367056a9d8fd9d5c ./dir-060/data.002
+7a53dddb70aee58e5661427249ee7038 ./dir-076/data.008
+7a95a94fa02effa09895b4cf9f806fa8 ./dir-053/data.009
+7adef604167c2a7031d11a61876f5e3f ./dir-056/data.006
+7afcc18fdeed24a4b6582f0cb8c8d63a ./dir-079/data.007
+7b806c0a3bd12973c5540a4a661ea698 ./dir-010/data.000
+7b91d10dc9a73501e2695fd03efca8a5 ./dir-064/data.004
+7ba6781b9f6a2102f6ee77e4bcd67e7d ./dir-102/data.007
+7bbc6a3d08c8aafe49f38286ea190736 ./dir-054/data.008
+7bc0ff8f58b050e3588a70ea5a899c2a ./dir-069/data.007
+7c2955cbe8d8635b43f067b782a8d22a ./dir-013/data.002
+7c96eeeb60a073929017e8830287f7ad ./dir-094/data.007
+7cedf898a8fe0dcd9e6e2fd98a74ab8b ./dir-082/data.005
+7d32425b7c104604f90ef5081a066d65 ./dir-015/data.002
+7dbc4d0b5e092ec07d71821d06cec150 ./dir-086/data.003
+7deabfdda68c09ca7212ea05659e9927 ./dir-017/data.004
+7e26cc30612356a343b39f0229ac3d46 ./dir-019/data.003
+7e7c2baf1cc7562b407fca1085c05d16 ./dir-074/data.004
+7e9b0ff66ef80bb5257831f7d04961b5 ./dir-020/data.008
+7ebe836d841b63662eead6beb412d4bc ./dir-107/data.000
+7f49e79851b7b45cd2d33175fa1b2969 ./dir-081/data.001
+7f667fbd3cc3f285932aaf92da189d1c ./dir-044/data.004
+7f84ad2226952dc3a2cad38c3ee2970c ./dir-007/data.001
+8045151192b49a8da4d2c8e6762ccba2 ./dir-107/data.010
+8048e0cba222cc165575eace3922e5b0 ./dir-039/data.000
+8049aa75ee4cb1b4c3bba59df67e47dd ./dir-068/data.002
+808aad824b9e2e465bca41efd1f52954 ./dir-100/data.005
+80940fad75c724a99076c376892083f5 ./dir-008/data.010
+809ad8f87b1d349538479eb8255fbd95 ./dir-087/data.010
+80b12631328b0da15def5ab7ff5923fa ./dir-094/data.002
+80b3adbeaf7752f4b28690bf34277a97 ./dir-082/data.009
+811f2222bf3e3261eddfa7c5b3d081b9 ./dir-046/data.009
+812008464e6378f41d6992b5ffcbeb84 ./dir-046/data.003
+8177492799584288b6d0912ddc3c5788 ./dir-010/data.002
+81fd13878406544d396fb0d907c9a41b ./dir-045/data.006
+8200bdc10480c0f32e2f83cd68515f7e ./dir-084/data.006
+820408ace3493250d98e8674b8187a91 ./dir-052/data.010
+821172e54e4afd62f705d226331c7fb5 ./dir-085/data.005
+826812a36105fcdf4d5500a6df0f08d2 ./dir-085/data.009
+82e160cb68fcd731ffd8c982eb669922 ./dir-034/data.000
+82f2bdcb4728e3ad2ad42688c776051f ./dir-006/data.008
+82fd0c7b72399922c915d56ff6966f09 ./dir-105/data.007
+83961ca3a7fdce7ec70696e2174653c7 ./dir-086/data.004
+83991d573bbd643493c94fe76fca77fc ./dir-006/data.007
+84455e279527682dc16597ccd64ba260 ./dir-103/data.010
+847ce91c4f37960bff5d34020b42ed52 ./dir-069/data.003
+847e94154fe39fcb40974901fd05b59d ./dir-057/data.009
+84a7ce38c6202fdb6b898df285446663 ./dir-106/data.008
+84aba2f561813a9bac0b4c06620152ae ./dir-051/data.001
+84c575bc39d6c0c91600a2dd9e453698 ./dir-078/data.002
+8512e02e44103f6767b334345dc73575 ./dir-049/data.003
+8520bdcd365dbbea56b48e181e892e6f ./dir-035/data.010
+85616c0da662f396d301cb1e6bdd7bd4 ./dir-013/data.004
+85ec836e67e6f2baeec01f665eb23e29 ./dir-095/data.003
+8603067c193e4a1c357801b381641dfb ./dir-092/data.003
+8611a66ab011033b3c906ba7b89e6c2d ./dir-037/data.000
+86378c2ea396585297f165531e6c7890 ./dir-025/data.000
+866430b5d3911c736376d7e660a81f00 ./dir-042/data.007
+86bc362ddc0cecdb48e4ef489efe9dd9 ./dir-005/data.008
+872a73bbce2c848a584e9382d62a7a8a ./dir-090/data.007
+874c93e05f4f32beff5051c4af86b8e4 ./dir-072/data.000
+876a2dd3d630d98143203693874f60d0 ./dir-091/data.000
+87a4a13a15b175b8b943cefdfe3e74e9 ./dir-091/data.008
+87dced824e8413e02cdbf539f8de061b ./dir-086/data.010
+87f5881d5c4a894085307aa10fdb105a ./dir-041/data.009
+87f8e92c8f1a1c8433398808abaf8165 ./dir-109/data.003
+881243716ba4e3c5ff3dd342c21c040b ./dir-082/data.003
+888da3d26656442aa1c19e2e477e59de ./dir-083/data.009
+88fa1bd87fa31d853e36bd503526227d ./dir-043/data.005
+89221d01c894262e97b15e7f5791e14d ./dir-014/data.001
+897ed3d984bf5f1368fabf49f3b0f12b ./dir-072/data.001
+89a503f5d1a1d9b94eadf14a3d7a7dd5 ./dir-045/data.000
+89e6081c35cdd3b86a836cff51971184 ./dir-065/data.009
+89f0acd75ca963beab0cabbffd628724 ./dir-091/data.001
+89f499b0da40af76802f0e03da77f6f6 ./dir-040/data.010
+8a010b14ef676d4304eef73b1f1f78e2 ./dir-004/data.007
+8a1283493ee60b494a58e6ace7452907 ./dir-089/data.009
+8a62a8742ed78023043d4eaec5b1e904 ./dir-098/data.002
+8a6b0c4f2c04e96d5315868996fcdda7 ./dir-108/data.004
+8a82ff49e710bd88450867a3f440b0da ./dir-075/data.009
+8a87b4e00c531cd577a39012397a0f87 ./dir-079/data.000
+8ab93bfdd9e62f3d6da0dbbc53ebffa1 ./dir-076/data.004
+8b09b7d62a3735681da36371657e14f3 ./dir-039/data.007
+8b93f04b52bd1fb0781f9d46ac7a290f ./dir-025/data.002
+8bd5650b0e7d4fbf6973214c2f507801 ./dir-047/data.002
+8bd5bfac106c68cffb3a098c4d157cf1 ./dir-063/data.010
+8c4ff8f780a98e39295f500278a1d887 ./dir-095/data.009
+8d1110f9accc804fc48bb2ee4af6bbf1 ./dir-110/data.009
+8d4261e80352070d2800f528932e37f4 ./dir-055/data.000
+8db08f66dee19a548b3e6eb3a1560980 ./dir-094/data.010
+8df75fe710ddf2316dd13f8065e4bf41 ./dir-087/data.001
+8df80279f2b2051d65bcf1f7a7dea7d9 ./dir-097/data.000
+8e58a42cf383173c0dcd6694402bc946 ./dir-014/data.003
+8e9933936e026159534f451cd0548d4b ./dir-029/data.001
+8e9e45218d17ae1aac57d24ba4417d9c ./dir-070/data.000
+8eab2b1d1ea2a5926ea5e276587543c4 ./dir-024/data.000
+8ee65e80da3449425d6c8cedc7be72fc ./dir-099/data.001
+8ef64875a9b9969869cb0f25a32fa0fd ./dir-039/data.004
+8f7b88afa2cfae0a337e1e330e9507aa ./dir-075/data.010
+8fd4eab768c4b5905e416725de423f55 ./dir-087/data.006
+8ffc927df86dd4c5e3966e9d0566e449 ./dir-014/data.000
+904a6d1b29b6b346d17fe5548b90cb6b ./dir-059/data.005
+904f618fe84960f4d495a2cbf494a179 ./dir-026/data.008
+90e643a0ead24f11449be2c13d739a53 ./dir-017/data.007
+91361fc94a17d6bd001d136355b85354 ./dir-024/data.008
+91850aa3831a821d375c416cf048d830 ./dir-012/data.010
+91f1499f9fc21e74879459600a825654 ./dir-103/data.000
+9207ec877c2fc0c887adbe81b97d7160 ./dir-023/data.009
+923fae1aad1f7f087f7d56be0a949abb ./dir-024/data.007
+924e608e16d18589a9932fc76ab7dad0 ./dir-090/data.005
+927968828d5c3065804466c0b654dfb4 ./dir-054/data.005
+9297c8e3209ad6c3e9eb803d5114753c ./dir-030/data.008
+92b3887179362557a9063adf548b2bd7 ./dir-081/data.010
+92f662f16c3768db5eeda3b60f4f0ade ./dir-022/data.003
+93b7c4d5373a364b8e3e26d077c980c7 ./dir-079/data.002
+93eb15b53e6879eba9e23c2f636e73a6 ./dir-061/data.000
+940bee1d330002cf234a338b63d07911 ./dir-068/data.001
+94172e924a7cdda629f202e115e86e96 ./dir-062/data.007
+94449220fca6a95893857a459eeeeec6 ./dir-000/data.005
+944a60c5820889ac6c204378ab8ec684 ./dir-065/data.010
+94611f97f30b3216ee306a97ee063285 ./dir-106/data.002
+95c4f44dbc662a1b80f231c03a1831a2 ./dir-031/data.005
+95f34bf560977aabf56b2374bfd801fc ./dir-031/data.000
+960b3433addbe419445506e4070e704c ./dir-031/data.004
+96fcc5df339caff14311a24a81134714 ./dir-042/data.006
+9706dd7a7ae979b858155dea8d54cb4e ./dir-033/data.008
+9873fcaaaf129d922cb29c10dd7665a1 ./dir-066/data.002
+989348123dcd08ee33c351e9156dd581 ./dir-005/data.009
+98af23ac4dc89133c749cb7968878859 ./dir-041/data.005
+98b72fa1526e20c16ab02546b656a925 ./dir-069/data.005
+99019e5feeacecd628b79b1eb7e161f7 ./dir-071/data.008
+9914beac14681493f7a7aa19a0f1bd8e ./dir-035/data.000
+993c2c1b64d4d9049df6d5d7cb56c4c7 ./dir-051/data.010
+999490bc33ec2a56ab230b6da8b1c1d1 ./dir-045/data.002
+99b70a3b5235ebfd1de6e096d54ab41f ./dir-083/data.008
+99b81b1024129991e19b010ee0f1299e ./dir-108/data.010
+9a0e0cb9a2f89fa8c888a7310b491aa3 ./dir-074/data.002
+9a2d63c1b47aa35a0d647d278d7b13b3 ./dir-020/data.005
+9a77b017cb714648bb338853717ad7e8 ./dir-059/data.006
+9af3052d79e03234d51790bca3f62abd ./dir-103/data.006
+9b1308d9a71f3d07df20c64ee9485215 ./dir-009/data.004
+9b243e7923207feeba44ef8967835213 ./dir-029/data.006
+9b25cc77ec3884b9b115f34a61aa6b1a ./dir-036/data.002
+9b4475d68d99b0d8b5b724b161ec3858 ./dir-079/data.003
+9b7bfa3dfb1223c084a732a460010ba6 ./dir-027/data.004
+9bd2393f4167104c602f462cff973c9f ./dir-058/data.005
+9c430e6db8f1530dfcab40de1ae320ee ./dir-058/data.000
+9c48ff0e9fc213cb2b483db230feb345 ./dir-022/data.009
+9c9a3eff549dee88a35c589ddd9d218b ./dir-018/data.001
+9ccd05ac96fe9192a6e3c9b864f51cc5 ./dir-043/data.002
+9cf33a7c891d6c7472267d57ca6cbc66 ./dir-046/data.002
+9d21fb30afaaef79aecb0da9815c347b ./dir-050/data.001
+9df2cd9f95fe997c8de62c5481d3c93f ./dir-034/data.003
+9e3b8430c7cb870803ec286c13718b02 ./dir-003/data.003
+9ea9c7d6b9fb3188ba0821136c228e7e ./dir-095/data.004
+9edf9a0560752008ceaaa4ae3ed5785e ./dir-071/data.005
+9f549656466f70f622c9df1c4ccc9521 ./dir-033/data.005
+9f80958140d65b5e0fb9a52167b1c422 ./dir-099/data.006
+9fa7f92a21ba500140aff17d8762a6aa ./dir-076/data.010
+9fd3b2804f593374def5a302a8b450c4 ./dir-074/data.005
+a0339de2c013f2d03f756a8144639897 ./dir-061/data.009
+a0a270ce379fd4d991d9ca728d63b36a ./dir-012/data.004
+a121b30fa0ad50b4e829a45879cc5edf ./dir-101/data.006
+a18b68c77ce90b9bdaca1ae55282337d ./dir-110/data.004
+a1e2cad8e97c82f3253442cff997bcf0 ./dir-080/data.000
+a238e250723b41101f07cfca17f11564 ./dir-045/data.008
+a246c5c6c1f823eb413af37d34b3bfff ./dir-077/data.008
+a29c24e21e6f607570f76e5625d3dc99 ./dir-032/data.003
+a341d8b152be8d341782db5ab1d7aabf ./dir-084/data.010
+a35ec86b31d73849147880eea4297fd0 ./dir-063/data.001
+a3891cd6855c346b07f6d1cd385c49b5 ./dir-094/data.004
+a3d9410efb0b1ff6600b3f627971fd16 ./dir-042/data.001
+a40587138ced04b20fb2527354606f2c ./dir-076/data.006
+a469810e4d1daa13f3e9b2e6f68b8d13 ./dir-004/data.006
+a4c13da90cbcf2f1624a4b2c2a9bb233 ./dir-109/data.008
+a4d4d492179eb2dca7ce30571c8ef3ba ./dir-007/data.004
+a52da0aa1a7acd8778fe6f40f0f8c0a9 ./dir-061/data.004
+a554b9068ef406ca372f9189304a82b7 ./dir-059/data.003
+a581e75f84f4ac6ad9e70e5b6bea53a4 ./dir-095/data.006
+a6055d0047d814a31f32e4185441d4a1 ./dir-007/data.007
+a60741e209b726fda4e969bf344f4aea ./dir-069/data.001
+a6395a9bcf53506cef1c6b62cc37f2d4 ./dir-003/data.000
+a65040955884d1c6e4d54ad9299a08e2 ./dir-062/data.001
+a65457550d23807b21c1afa93e9d21ef ./dir-035/data.009
+a66e2aef802f92385bf38b01ce8b0c80 ./dir-031/data.003
+a6952c83f6a406ed1baa2b1251bccfff ./dir-032/data.010
+a73aa26f62de99e97e691379ff64e838 ./dir-055/data.010
+a73ad6b847af80b66f4b37bf752e1097 ./dir-096/data.002
+a78d53e617d31d29d07a1bc8d463e456 ./dir-096/data.010
+a7903334dab2c9948a9460d94ffd27eb ./dir-082/data.002
+a7957cd1bfb38bb265c2d909bf4f0b21 ./dir-026/data.007
+a79df6152da4b78ece663f4b95d20cd3 ./dir-041/data.010
+a7aa7f0213d41db9b7a2d63c90f77772 ./dir-053/data.001
+a8111a4439244ed9de6e0c5944d7ffa1 ./dir-029/data.008
+a82b1e769c33fe701194d95fccf029c8 ./dir-010/data.004
+a8573ca8719910d3ea25839cf529d441 ./dir-091/data.009
+a85c6629da53d32a0ed0d3c8b0a26c72 ./dir-077/data.005
+a8a137df04b87ac736e158515ec71a42 ./dir-087/data.000
+a8a7ac87c426aa047b573b2dcbc4a0e6 ./dir-058/data.008
+a8c038a03f5bc2e6b52f02b8c5c52cb2 ./dir-054/data.009
+a8c4c1f924133ec0c8360901bcf6c199 ./dir-094/data.001
+a8e06c98144819d98e809492f08aa29c ./dir-035/data.001
+a93a49fd784c6ad90385ea022ecd2343 ./dir-045/data.010
+a95c46ac7047b8866dd9225ee4d648c6 ./dir-054/data.007
+a97f9c6c523f5479046377eca793ef53 ./dir-040/data.000
+a9a50ed2b165d548a1aca2e4b306d06b ./dir-048/data.006
+a9ba09df546930ba27663df0227b047a ./dir-002/data.003
+aa122bfd760ea4dc50aecf4f533c65aa ./dir-016/data.004
+aa3eb53c7a7a77690e996a5c0c1ccfae ./dir-024/data.010
+aa61a5d5f336b0b50e6b1d0796b890ae ./dir-088/data.009
+aa6fef63c3b2bbb9c17c9bd7308c5306 ./dir-036/data.004
+ab0f881f872563bd7846c3432ef7fce6 ./dir-003/data.010
+ab1ea1fe95b3af7db64aa8fa146760bc ./dir-093/data.008
+ab5acd6c59415e13dc791e3f300bccd2 ./dir-039/data.001
+abf175effd6c04dbedc04a31f009ef72 ./dir-038/data.004
+ac00bb6001e354a604063f1e31a8fe3c ./dir-028/data.000
+ac0eee49e473726deb56d47a823198d9 ./dir-086/data.009
+ac6e1f616fcab93bebea12c3dd1fefee ./dir-065/data.001
+ac8e596fdf6279e40fd0085bb0f34165 ./dir-084/data.005
+acc1ee7febd100ab23b6a479d3001825 ./dir-061/data.001
+acdbe2e496d6ae23c0f0dcfb0ea6faa8 ./dir-005/data.005
+ace9c8b5dd8e55dd13735c649c9d4af5 ./dir-099/data.008
+acf5cb2c7b1eb4390a60a1774bc4bab0 ./dir-090/data.009
+ad24114c9cb8f035ade2e862d9abafa8 ./dir-053/data.010
+ad320cdbfbfa5cf6c7b7a8c40a686193 ./dir-021/data.000
+ad5b2d548dbbfe6ab0e21437bb2e1f2d ./dir-019/data.001
+ade98adeb45ab19c7ce8d42782dc04a7 ./dir-087/data.005
+adefc5856d2a4595beeb1adcbd172221 ./dir-019/data.008
+ae81c953786cec82d0f1f9435b0d0c0d ./dir-056/data.009
+aebbeeb5e421cb8ad2e831a302742a6e ./dir-081/data.003
+aec4978b81441da9cba9008549fd58b4 ./dir-103/data.007
+aef628d7676ae21153a87e0f1ee0827d ./dir-053/data.000
+af9385b7625684c3d153854bfbc427fb ./dir-057/data.007
+af949e292c736dec64c29b35dbc94cf3 ./dir-104/data.008
+afb68dd90956c729c49211aa5cc974d3 ./dir-018/data.000
+afc5cceaed901e3baf26410e530b2112 ./dir-043/data.007
+afd05141be6f865a64e93908e05ab2e7 ./dir-070/data.004
+b050f6f0b55cafd91af8b5bfed9d7ef0 ./dir-106/data.010
+b06bca53b131304a89d152fa869e8d44 ./dir-006/data.006
+b07e07d9eb5b9765d5916910d3022a15 ./dir-041/data.003
+b099661d0dc7e777e94b88a768792aba ./dir-029/data.000
+b0f9fbc3889843756c2fbbdbc8e95c80 ./dir-052/data.007
+b141e0746d771b642b80789e2cee78b7 ./dir-055/data.005
+b15458b8d28b4ff277aa19d644c3f01e ./dir-078/data.004
+b19692bfcc887a0326ea0d9ff777b708 ./dir-082/data.008
+b1a0f67c22211b60eaa3ad043300ec39 ./dir-077/data.007
+b1cb07d7f4ab031522a1092cda009ea5 ./dir-024/data.009
+b228391e5b674f6e320f46c92a231a6d ./dir-013/data.001
+b231b16938922b62bc313c4dc791e89f ./dir-040/data.001
+b235e667fe06e2333d3d4f4cfeb11d8e ./dir-061/data.007
+b25e47b8e6084a771082a79d2964125d ./dir-042/data.008
+b2a5017e913a254b33c8fc51a0304745 ./dir-018/data.005
+b329dad6ad85c65a9222b8b261e86361 ./dir-008/data.008
+b33cd0e18b5a2384dc05a46f69b09059 ./dir-007/data.000
+b33f13624a7a7cfc50fef0456d74947a ./dir-097/data.005
+b367a0363b574a8455b841cada04accd ./dir-047/data.005
+b3c5ac9af4d7a04325182806453958ba ./dir-103/data.005
+b3dfc8b0fb7616287af6f7757207b6b8 ./dir-033/data.009
+b41d0afa4d57823e34d11e64bd6534a6 ./dir-087/data.009
+b445b7e624e7f1f7a5be6541a3a93a8a ./dir-043/data.009
+b46cf4a767a2d389800dda0374917427 ./dir-057/data.002
+b4c65166180c16e5437fbfe03af4b5d4 ./dir-015/data.004
+b4ccf8da14998cbe721c990de46c9edc ./dir-032/data.008
+b54b392b4cff92f8151d58cb92e688a0 ./dir-067/data.007
+b5934cbce1651c12cbb4e618e091f435 ./dir-102/data.001
+b5c1e57ffa0ceb0947170f610075f3b0 ./dir-043/data.001
+b5c8f4ca9d2cff5245b847e21c7df049 ./dir-050/data.002
+b61bf319c57da4eb4f121fd5c535760c ./dir-015/data.007
+b67fb5ee7b93061ade64929492590f5c ./dir-097/data.003
+b690077ebb25c2605ef0ee3372894cec ./dir-044/data.003
+b6c20ced9ffe0e91fbf7c4d71cc451bc ./dir-075/data.007
+b7538f880d91a07037290f98027ed306 ./dir-040/data.009
+b79f1bdb5bbb47e5d965e90137ddf26e ./dir-015/data.006
+b7b7cad8720d0f99fdbd7984caad8831 ./dir-061/data.006
+b7f56c9ebadcae8bd7b30e14bde0b5d2 ./dir-014/data.005
+b7f6d1118ee932c65f1e5a1931d6c8ff ./dir-014/data.009
+b84ac96cedb442fe235cffc8aa31199f ./dir-017/data.010
+b88c57aba26f8e1c085cfc7ae11888d0 ./dir-073/data.005
+b8bf171ed4f5f905cf8f7dab6a82a7d3 ./dir-021/data.002
+b8c336dd6ec7df5cb3f70ac79e169221 ./dir-108/data.005
+b8de847d8af8329206b516f825945439 ./dir-107/data.008
+b91053058f5cb868a65eb00ffc8c85db ./dir-018/data.007
+b983ec5e2696dec42e886e4aaf24c2dd ./dir-041/data.001
+ba18e6af480799cb61acf0e3984413d9 ./dir-023/data.001
+ba1c86b4c7519e9987fc62e04e14b93f ./dir-100/data.009
+ba3d3735db7501bb45a1bc37a1c90d91 ./dir-039/data.006
+ba5dff4458e438a37f7020a6997cb3eb ./dir-102/data.002
+ba71ea66885339efc504f581fa9d05fa ./dir-021/data.010
+bab7340230caffd9abe45a213cc7c94d ./dir-044/data.006
+bacf759099d3ce33cde104f0fd09404b ./dir-107/data.006
+bb3dc9d92e7c13191502f9ca2d9a2a46 ./dir-034/data.006
+bbf62db3e277893ae705b95df057c676 ./dir-046/data.001
+bc9a15ee53571be04ca1992754d407bc ./dir-037/data.001
+bcadd63e00fad4b7f09f32cf50c606f8 ./dir-078/data.010
+bce43f4bc32e3b431ce88e714ebde4e7 ./dir-078/data.007
+bd57ca2552a35196422eb254d0b6689b ./dir-010/data.007
+bd6d9661ef44ee94f3a576794ba2e972 ./dir-083/data.000
+bd85e8c8c0fd4ffd0a8abdd38675e4a7 ./dir-061/data.002
+bd8e9c392bc76c3d04ce23a376cf7941 ./dir-104/data.010
+bda8d53c45c521c5a7fcccf19e0fd4d2 ./dir-052/data.006
+bda946d7293089f487dbcf64564b7d79 ./dir-051/data.003
+bdd285092faf5a19c9a8b3fbd1162d64 ./dir-101/data.000
+bdf39b893567b3a6329a36dac48b516c ./dir-099/data.005
+bdf56ade34628d9a2e757b2bc6eb0e0c ./dir-013/data.007
+be507a830dc09b8c6d802d45647edb55 ./dir-104/data.002
+bf106a60eed1963cd3e58461c38cda87 ./dir-034/data.010
+bf21e493d536385c45df037b2e9cdb45 ./dir-089/data.000
+bfb0f4ba9a8588bec3cef4ede6a3bb57 ./dir-106/data.009
+bfda868277a6c6c0e25795ad73316074 ./dir-032/data.006
+bfdac2c988de39cec95a59f8a090636d ./dir-092/data.009
+c01bde4e9fd7733b6a915284ac12c4e8 ./dir-108/data.007
+c056ff72a9b187332dca300fbb81226e ./dir-026/data.003
+c0b2182de19c1695b71277d4fbfacc18 ./dir-052/data.001
+c0b94a538176aa6986cafa2e2fd8fe8c ./dir-045/data.004
+c0e16a96014a13995e537e8e39b0155e ./dir-052/data.002
+c1cf14e3812a8b9933911da679c49f8f ./dir-072/data.007
+c1ef0ec1fe3cc64d705d5499b6ee622e ./dir-110/data.001
+c2129120bc96703d28928d567bc5df58 ./dir-025/data.005
+c2429dbcf4929ef886b612147e8efbb3 ./dir-048/data.008
+c281f9a42b51ea7af93e5a88c1216120 ./dir-084/data.008
+c2c2abb9e870d144dde05ec6d7a979da ./dir-028/data.003
+c2f1846025293c2560ef44a2287ca948 ./dir-007/data.002
+c2f6da08e3e6c04fa04dbe47d9d91ead ./dir-085/data.001
+c35373fb9888c30272d2f574c0a9423b ./dir-079/data.010
+c372e35177aa3286cb5508590b191302 ./dir-051/data.005
+c3cc90dd33b6e5ed10081456f070c447 ./dir-085/data.002
+c47011f9488a8b8b5510aa96ef11fe57 ./dir-039/data.005
+c4958fb09eff0dd518b8a6997c6b71fc ./dir-017/data.009
+c53849249fad0defdf837bbddfa15489 ./dir-077/data.000
+c56775690b961bd0425dfd3d83dc4fa7 ./dir-066/data.000
+c5804311215078aacda89591c40bb4c2 ./dir-005/data.001
+c5b3227aa5484919dca0da947390419a ./dir-096/data.000
+c5caf8575038ceca91b140d9d0e3b24e ./dir-069/data.008
+c61fca3e05f9a8596ffed3f1512c8fd9 ./dir-024/data.001
+c672d7b16693c1848fb2331fd483ba5d ./dir-067/data.010
+c6c64e1a31b6593f2e35798cdfb9a67e ./dir-103/data.009
+c6e7741f3d499cb592e84ee501ae7c12 ./dir-056/data.000
+c734f450ed20e0e6ebe7e52ebeb40c27 ./dir-095/data.007
+c765acd0fddfdd8dd25c1e3b578ab8d2 ./dir-021/data.005
+c77831ccfd2a1c1842c475f2395e586c ./dir-004/data.010
+c78b32a24f2ffaa7a64a910871c7c2da ./dir-086/data.005
+c7aa9ec8f4a91d993ebc357f7c4d624c ./dir-012/data.001
+c7b6276dd9c53abc7824b172377fa566 ./dir-073/data.008
+c7bd7f81b81f3a3dffc9aa6d8903a5d4 ./dir-020/data.004
+c7d3088dbb470b1f8e659795e9ae001a ./dir-072/data.004
+c7db30e49010acd441ca071b159e8952 ./dir-093/data.005
+c87a70665e49298558c54e7b11150bdc ./dir-073/data.007
+c8c52776a8e9b3f43b55c112de4b3615 ./dir-055/data.001
+c90dd7ad53022e2ec777b401a2056794 ./dir-032/data.009
+c91679d9ccec60ec58fec6e5ecb71cde ./dir-001/data.004
+c9283d1db619943708a58a0d4e072490 ./dir-098/data.008
+c97100eaa0d5b50c2986ad2d7a4ab4c6 ./dir-105/data.002
+c9ca93c8b91e23c7d884985261c727bd ./dir-087/data.003
+c9f613e36059f6a2ebb21dcb5ac2e544 ./dir-098/data.005
+c9fb7d08b76286f726d349933453cdaa ./dir-102/data.000
+ca026e1fce7342eea8d59b5ef15ae1b9 ./dir-018/data.002
+ca1b624cfe0398448567862acb496721 ./dir-002/data.006
+ca5dd894a005c13702e966d04a58657a ./dir-074/data.007
+ca690ddf1d9488d3aae5de667b46e3c6 ./dir-071/data.009
+cabb2940fafe7ddf2643830f7542cc4f ./dir-070/data.008
+cacc98cea7525be670fba062e921386f ./dir-027/data.009
+caf930731a2124520be71f7bdbf5147f ./dir-030/data.005
+cb30fa3d22c32ff5b466a216d7e4174c ./dir-041/data.007
+cb353cc900a10c0020fcc40d20fb772c ./dir-050/data.003
+cba8191118e1823bb38f80321b98d7a5 ./dir-032/data.005
+cbf68202741c92a6a1a1345ba40dbc1c ./dir-019/data.004
+cbf9667ac181f5100cf3d7d179f07c26 ./dir-014/data.010
+cbfe24d7f1aef20746adda09edfa0b12 ./dir-072/data.008
+cc2567a2350fee4c5187a00bc0615d5e ./dir-054/data.004
+cc798615c0b02d53f6827240ee654f98 ./dir-064/data.010
+cc83d5b78aa34ff3d82957c7d69ee16a ./dir-013/data.003
+cca5c0bdd6d0eb18b7cdec2bcbb59754 ./dir-076/data.009
+cd6be4b1b25de9bff66ad8191eac7d4c ./dir-042/data.004
+cdcd5240e78c13357281153c4a41395e ./dir-087/data.004
+ce0dec612db80a92a176ce190b19a754 ./dir-070/data.001
+ce3392cd4d81de001fb397ba1655c0c8 ./dir-010/data.008
+ce58a0e50d16d75c45ce9447bc868b45 ./dir-018/data.009
+cf5fb8cbfe7235521fd7878d964badaf ./dir-022/data.004
+cfbe0f69b35baa9133b6355cd2bd6d08 ./dir-094/data.008
+cfc01799332549522a823077147adff0 ./dir-056/data.003
+cfde64c362835a72c8cedfe6477bda56 ./dir-079/data.008
+cff6f29c1536291d54498fb539c6681f ./dir-002/data.002
+d119223e0da07f005012bf6fef415b5c ./dir-082/data.007
+d16dbb40ad04cfe09048dfa56977ca3c ./dir-044/data.010
+d1dbfddf209f6a070bcf48353abdbd8b ./dir-040/data.003
+d1e5806bdc06ae2231b6f9b1a3fa1f0c ./dir-001/data.001
+d2229c5a61c0ccf7b139714484231a84 ./dir-001/data.009
+d244204b0e63d7c33b2dd3e5d2237748 ./dir-036/data.005
+d253d09ebe6df96b84565b3bf26e8bbc ./dir-030/data.002
+d2703dfcb228a9885d58eb6bf8c4318a ./dir-088/data.002
+d27c78713f252e2393ea942abcf4a4ac ./dir-048/data.007
+d2b6e1db7ab88233015e7d8fa5a6bb81 ./dir-021/data.009
+d2be814d2ae5f33723cc8794614483fb ./dir-008/data.005
+d2bf7c23465b9455a3ca27b50cc123ff ./dir-073/data.002
+d2c1b2b6ca16f4e4ff9750926aefacd4 ./dir-030/data.010
+d34362c0b86a934e848478067760c863 ./dir-021/data.008
+d34799931eeefa914727e0822c667fc5 ./dir-031/data.008
+d35a62ef99570c5ef5bb6291bbb36cc9 ./dir-101/data.003
+d39fdbbfcd1e15fda146977224126f8b ./dir-011/data.009
+d3eb0f4bb3b04b412907e453c82bb89f ./dir-035/data.007
+d40f0f333fc2f02a4266d363897f3334 ./dir-045/data.009
+d44fff6de24382f14b0426101e737354 ./dir-110/data.008
+d460686d5f374017452fe62e3f95b4d4 ./dir-105/data.008
+d461cc84eb03cc6db78e0720648d15e4 ./dir-061/data.003
+d463379d1811241dc56a4ccc9bf68dfc ./dir-076/data.005
+d46c8c7b7c0b54ebd046c6209d1f8afa ./dir-054/data.001
+d4d0fae354af6cdcc3202c9aa8ff2e9a ./dir-019/data.002
+d4f3040cabb5fbce85528e25f20cdeab ./dir-061/data.008
+d51be6c824d053d4e75720d6c8f515ff ./dir-001/data.002
+d540ef78ac829556f9933dd6579db7ae ./dir-091/data.003
+d54f188240ba83df0932dffbb36007fb ./dir-021/data.007
+d5b52c7c054a27ba342bc7e53bfe131e ./dir-081/data.009
+d5c7cd835ff19cb7c70e17d3134263bf ./dir-074/data.006
+d5fb3204d70d906a74b760999e5b266c ./dir-042/data.003
+d67493efc7f10910daab14016546a47b ./dir-059/data.000
+d68ed1553d2660f509612d8ddd8bcd62 ./dir-056/data.004
+d6f097c83e62877b98951bead0282dff ./dir-040/data.005
+d6ffc513ced7b0c1005dd11f10924b88 ./dir-055/data.008
+d7a69319272c26b24631cc0abb1521eb ./dir-053/data.005
+d7c2447c79f584c5a4b2ec525c586129 ./dir-031/data.002
+d7e552057b420dabf022aa6b8267946a ./dir-030/data.006
+d87260bd7bf4aa6ec556d77bf958a36d ./dir-060/data.001
+d87f53fa0fad9af8218a27fa1b69c070 ./dir-080/data.002
+d8f379df1febe77c86990017745edebc ./dir-034/data.005
+d945d5a070b995162293f1c77ff15527 ./dir-018/data.010
+d9ed49e99f63581ccafe915b76f3f96d ./dir-102/data.006
+d9fca3922fa0e01fd527f8db69589425 ./dir-088/data.001
+da09dfe4cb9bd06c37473254e857139c ./dir-076/data.003
+da18c9351bceb7f342718d50fb062544 ./dir-006/data.003
+da247fc6c9e1f840d7ef58e86bbed220 ./dir-019/data.000
+da2e4fd85a49ba6b0c7659c7abf99ad1 ./dir-089/data.005
+da57bb441160e6555b30c75915288bf5 ./dir-099/data.004
+da9218453d4c99672e702f0fd7b9c0c0 ./dir-014/data.004
+dab2bec775140e6203daa6ec122f049e ./dir-071/data.003
+dab99d3d9dfc9d5c9f0d525716153562 ./dir-075/data.003
+dadc6c41f41b3ff28706df675eaa96b5 ./dir-004/data.000
+daff2d6af09718e4825b22b98f00b7e9 ./dir-003/data.002
+daff63e9d1ae3734d069d0dc0305be72 ./dir-109/data.006
+db210b89b1004f031eadd847e5a0645b ./dir-043/data.008
+db2b0158388ee251970c6454c8cd9a97 ./dir-083/data.002
+db49a13bd7e2320210df3a006f7e9f6f ./dir-043/data.000
+dbdba9607f2d777e10ddc67f50950e2e ./dir-057/data.005
+dc09e8a41db214d248148efbf9605f95 ./dir-081/data.004
+dc0a7007675041b30317afaf44ee708e ./dir-064/data.001
+dc153ae714532e2d34f1b7ea044b6ff9 ./dir-096/data.008
+dc1f4da785733bbb2897d94ce78bc7bf ./dir-071/data.004
+dc2f22dae3a3d34a18929506cfc6f277 ./dir-029/data.003
+dc40f9a57dfacd21d602218898ab93e7 ./dir-058/data.004
+dc98758c6a9b39a6a3deae298d579c4e ./dir-042/data.009
+dccd562a4a98653a3fe96d77741ddbeb ./dir-104/data.000
+dce7e7c23b5cba5b96b11d5300e00afe ./dir-056/data.010
+dd006052a28552fa069abf5043462570 ./dir-049/data.009
+dd079bd050dd7b83ff6a8e2fb5773ed4 ./dir-049/data.010
+dd898a6ab8739c0cf16dd72034bc7668 ./dir-046/data.007
+dd8c233b992da6babbcbc9ce7879051b ./dir-097/data.007
+dd981304897bc330f690d2040aa1e53f ./dir-047/data.009
+ddcd7ea13cae57498088c1994619b3be ./dir-020/data.001
+de7fe274e770b4dabdeb867fa92a12bc ./dir-109/data.002
+de8a70eee3e508a723d3b5d2a9901316 ./dir-055/data.004
+deb960b1268705a472e3b46181ccebfe ./dir-042/data.010
+debf081b6824f07c5f6c22db6bc152a6 ./dir-086/data.002
+e003aaecb77df91f04990cd45eff2dbc ./dir-018/data.006
+e0596ce1f833197052bf72fa4e45ec28 ./dir-074/data.003
+e06e45e369dc2fa98b18c35268ef81c7 ./dir-037/data.010
+e0c2f2d375b3fa8c0c47a029bb18cc39 ./dir-009/data.000
+e0d48247fcfaa83930555edf8a6647df ./dir-041/data.004
+e0fe16303d99ec21e6dd13ac27d2b5fa ./dir-083/data.004
+e13007540bfd0bccdceda2f824ae3236 ./dir-092/data.010
+e131a83d7b706104b800bcba7e89a9f0 ./dir-009/data.008
+e1697901fb44ebccf438fb056c1cbb03 ./dir-007/data.003
+e1be15cad90b65114aff80e0f922e988 ./dir-034/data.008
+e2e34027afd431af2b5ef0bc815a1623 ./dir-100/data.002
+e32174de64d871b47b38ab874aa50a39 ./dir-102/data.009
+e33dcc8d7ffd1e0fccfb71c6715f6e56 ./dir-049/data.007
+e382a45df3024ad97563f9c13a195181 ./dir-105/data.005
+e3a104190d1c461ffdac462d66dee7ad ./dir-090/data.010
+e45c6752ab067602a7e9a71b9f9105e3 ./dir-045/data.003
+e492d468364872187d50021aa490c367 ./dir-092/data.007
+e49ff5b90e7e7704d5c829c41a859c86 ./dir-047/data.001
+e4a0756e3e92ac6b266c4b26dd43d27e ./dir-064/data.008
+e4a0dbb8ed00208e9a4d293d1c259989 ./dir-105/data.000
+e4e5e5b2642d322e1b9539bb021e1228 ./dir-064/data.009
+e4e9447cdd3ee6f4a753a9fa3bc1823f ./dir-037/data.004
+e5c21a2614775ebb798752e4dbba7f52 ./dir-107/data.001
+e5d87d25b8fdce6d6f30b52230761884 ./dir-070/data.009
+e5f2783896a89baeef0c5f68d0f47382 ./dir-110/data.007
+e6b75284cc6be5b80c57dc613373eec5 ./dir-086/data.000
+e6eecf8a727f4ee6852e2f62fb941b70 ./dir-039/data.002
+e7068f5918b4ce52344808f68ad0a085 ./dir-002/data.004
+e76d156c81829e84fe6688266fb52e37 ./dir-048/data.004
+e776126c38f075d4d2d3ea5e81e36e28 ./dir-094/data.005
+e783cb0562a591793f817a659e708470 ./dir-070/data.003
+e7bd906fce62b116f9088b58737b32c9 ./dir-091/data.006
+e7c710fe94754f90fb64f9e7e89351fc ./dir-069/data.010
+e81eff29b7729656cf2e06ec4a604185 ./dir-048/data.010
+e82627067c5c15970580acf5939be216 ./dir-030/data.000
+e845537c1977f66004c079beb9af5d74 ./dir-067/data.002
+e8649a3c6600e3624f6f2c1ab36bd5fc ./dir-036/data.009
+e88289300b2f2dbcca4c69b96abb31e3 ./dir-060/data.006
+e92f7f1b0a07ac60b05786d5725967ae ./dir-005/data.003
+e9d61885e0bbe1341a7789ecba127ab3 ./dir-020/data.003
+e9d9fb125da6f7296c0ee69235fdc55d ./dir-040/data.006
+e9ebdcc7fc5ce3ec40ec2c22b56a0c5e ./dir-057/data.003
+e9eeeaccd7c260f610226d199dcc1133 ./dir-001/data.003
+e9fe2dd437c71180558c00664d96936e ./dir-057/data.000
+ea2d20b5948278f55f8700bb7cfb525e ./dir-094/data.000
+ea3a40a6ed7c5c7badcddc829240451f ./dir-000/data.008
+ea60b89846ffe9098f376100a15fd623 ./dir-019/data.006
+eab0df7e354bdd20324ff75aa354c67e ./dir-036/data.010
+eac4ad9e6789702729f14d480254df13 ./dir-078/data.006
+eae751b2f5890a8a2e66842500875489 ./dir-064/data.007
+eb213def8582bf9c391032ab810224a4 ./dir-030/data.004
+eb2239dc1c3284a743ec2480b66a440a ./dir-095/data.005
+eb39335474a5f114496e45855d65965b ./dir-030/data.009
+eb49c652a3a9b67f48bed5f453c513fb ./dir-091/data.005
+eb8ab8adf1fd8e2e81eceaa2e405becf ./dir-015/data.001
+ec111bdd9562902ed047cddc4e291e0f ./dir-011/data.002
+ed6738198877ba672174a23b39aaf0ca ./dir-050/data.008
+ed87c44257e44baa0486784489fe1eb7 ./dir-093/data.003
+edae2f977e8885aabcafea140e4ea445 ./dir-103/data.002
+ee03c3c5c80c543bf52029381455e0da ./dir-093/data.010
+ee90d8d8a67c5f06de9a35a505bd4d82 ./dir-005/data.010
+ee98acc4ba7f594a49b86364edcf4312 ./dir-047/data.006
+ef45a01355157d5c4a8ac9783d30b000 ./dir-099/data.010
+efe6dab69eb3503886b623ab24ae32e0 ./dir-033/data.006
+f0230c53db8fb9ff1a66eec12b28d3c0 ./dir-029/data.010
+f038a202cce579e29ed75ef2f8ec9205 ./dir-077/data.009
+f067ef339dbfa373842d6beb5d4c5839 ./dir-006/data.000
+f06af3887a662caed220e9fe98c12f6f ./dir-007/data.008
+f09311e30b55f3199d6b5891cf717bb5 ./dir-080/data.004
+f0b69d2184753e5341681ddf9bc0df32 ./dir-037/data.008
+f0db3f70a37f660ce31bfe0600b80b49 ./dir-087/data.002
+f127bead521c0da62f4a607ebd6627b6 ./dir-057/data.006
+f18ba5b02bbf03abe12fca65564dcb95 ./dir-108/data.008
+f1bf04664350afb4ce5a5f0dd245d2c5 ./dir-038/data.001
+f1d367dea7bb98a9bddd4f5cc7a9798e ./dir-065/data.004
+f1e646f46c36449c3412aed4cb164968 ./dir-110/data.006
+f214ca488221c804a5557a9b809afd65 ./dir-045/data.007
+f237d0598589a542815fbf5ef59751cc ./dir-054/data.010
+f2577aa82791ecbf27b9085a22c23ff9 ./dir-059/data.002
+f2616b2ea0b3ce8565e568c0ed8efacc ./dir-079/data.009
+f2cc443362b156a2228f4a69fe4102bf ./dir-084/data.003
+f2df3b5bbcb225df895cdac384145d84 ./dir-020/data.000
+f329736caf4ce7d80213defa11f3c65a ./dir-025/data.003
+f34fd4ff678b218e8780724d3bd2a420 ./dir-029/data.004
+f39243bebe1bbc71e85de2b3d8d7122a ./dir-107/data.003
+f49b053513974d593dcc2c461c96e2a0 ./dir-028/data.010
+f4c0d20fecc04dbf7a204e105f836893 ./dir-101/data.005
+f4cfb0beced90e2adf96d3f2fa2ba465 ./dir-034/data.007
+f4d745c385f037aafef08310fb194a2c ./dir-066/data.004
+f5084ae9ded9833ee8c63281f5ed1641 ./dir-058/data.002
+f519dd2fcfc3047101faf90bcf18654d ./dir-049/data.005
+f5258302f6ab8a38a7b6b05b10d35097 ./dir-055/data.009
+f5323d4d915d67f9d777d52374cd27c0 ./dir-016/data.007
+f5e7738a9f2c3d02929d009724336023 ./dir-067/data.005
+f62d0c3b799b25730fb6a43d0014f220 ./dir-022/data.010
+f6abfdb63fb4c981814704fedd4b18d0 ./dir-058/data.010
+f6f7d42879db7621ad209d45bd9d6a0a ./dir-013/data.005
+f70fa856aa1740b7ed824a5439665b0f ./dir-062/data.010
+f72df01f8f290bc6e05f972db7a01f90 ./dir-048/data.002
+f73a183eab3ffe4070277b9e7f23da56 ./dir-037/data.002
+f7f7b2f1b136a01d8a9b3f1f6c3f9e88 ./dir-025/data.008
+f81c088c701a88d9b396e30f98776064 ./dir-033/data.010
+f897e7735ef1808a5a7bf6129cf0e0c9 ./dir-092/data.005
+f8a696717bb5a5adecf00ddd097d8d0c ./dir-091/data.007
+f8e2186f04d4cb6801acc2c0a68d810a ./dir-049/data.001
+f8f774997c9388bb7a6d593e6224e998 ./dir-104/data.007
+f90e54c08be11e4aacdf3c02dff8ee1b ./dir-083/data.003
+f9111bb9930d80cea7b7db64f092d597 ./dir-068/data.008
+f969de462dd1b58a64bc75adbe73016d ./dir-045/data.001
+f984f85a77d57c6bd3b366771fd98ea4 ./dir-063/data.005
+f9a468508fd7e6db5a77e3101daf22b3 ./dir-100/data.008
+f9c8e6c3a0c4a938ceb033f151e541ea ./dir-077/data.003
+f9f909982ea33e776b985ee5aca5378a ./dir-052/data.005
+fa411f1f9f559b4ee3dd109c2e59b106 ./dir-081/data.006
+faa2bbf820f78b39454c4feebe08a3c5 ./dir-004/data.001
+fab4fefd2d8eb77c4f36c89959ae7980 ./dir-073/data.003
+fb2388d03c2723f15728bda9c1dc2762 ./dir-024/data.006
+fb524e3bb758f32e7d34e538a5e40560 ./dir-019/data.010
+fb539fb081f4a95ac5b5b5e11343e2b7 ./dir-052/data.008
+fb7dd48f35c128212b78551cceda244c ./dir-038/data.005
+fb8aa16acb9f7292384e265585f4dd37 ./dir-055/data.003
+fbd1db4da87c1ed8082d9cf94fc424aa ./dir-027/data.003
+fc04e84bb6c640f890854fc5775b9d8a ./dir-034/data.004
+fc21a043990d03703003a506b0662821 ./dir-005/data.000
+fc2a45f10e52e18918d25d640f751457 ./dir-099/data.007
+fc2e476a6d1b7ce71b51bd43816891a3 ./dir-096/data.007
+fc304616f24322e26a4666c0e7181e7e ./dir-006/data.002
+fc906d13df56dfc5580af823ca1af610 ./dir-077/data.006
+fc97b066c0af8f2fa40f2bc91cae3b56 ./dir-063/data.009
+fc9bd58f8f126a8406987360b64a91fe ./dir-004/data.008
+fcbaf30100050cc1bb990e98d30605b9 ./dir-006/data.010
+fcd7a6b7924260b997ae603eadfae59f ./dir-090/data.000
+fd1decb314835cbb95d4aa6e7bdf3359 ./dir-075/data.000
+fd38d0ddd60429b3c7071867a8fcfbc0 ./dir-047/data.008
+fd3e4c487cae1c68f05ea2dc81cba74c ./dir-055/data.007
+fd63004ae886ce8e520756c6eff04835 ./dir-009/data.003
+fe086b79a2c29f13437c1346a8cb53f4 ./dir-009/data.005
+fe3505df1642e9d306269e2e07ab1089 ./dir-064/data.000
+fe4f310b776e309503f523b8a26d3ba8 ./dir-085/data.010
+fe68ec6607c15f0ceabada101b382b0e ./dir-069/data.004
+fe7751a5487172303de648672602c28a ./dir-076/data.002
+feb8b69e6224a7ea72e881e3f4a45b32 ./dir-028/data.009
+fed540a11f00f1f80470be7b491fc45c ./dir-108/data.002
+fed5e00dc94ed751061194eccf2c77e2 ./dir-050/data.007
+ff10c7b37d705bc48a1fdee62ea7661f ./dir-079/data.006
+ff13d49326ff8759119e78959de628e9 ./dir-048/data.003
+ff216f0f2e540e9057874b0cb4fdcdb1 ./dir-100/data.007
+ff92bf04634e26a2980ffb6ad47f9c05 ./dir-026/data.006
+ffe078de3583025c4780c8f4305772c3 ./dir-085/data.004
+fff6015c3b8f791f4027791ac0b5f593 ./dir-063/data.004
+
+create cramfs image
+count MD5 from the image
+a6667acb1cb0685d9eb5b9cd3724766c mkfs-loop.img
+
+create loop device from image
+check the image
+mount the image
+list the image
+.:
+total 56
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-000
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-001
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-002
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-003
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-004
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-005
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-006
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-007
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-008
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-009
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-010
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-011
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-012
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-013
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-014
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-015
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-016
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-017
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-018
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-019
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-020
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-021
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-022
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-023
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-024
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-025
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-026
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-027
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-028
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-029
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-030
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-031
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-032
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-033
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-034
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-035
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-036
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-037
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-038
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-039
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-040
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-041
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-042
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-043
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-044
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-045
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-046
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-047
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-048
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-049
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-050
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-051
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-052
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-053
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-054
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-055
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-056
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-057
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-058
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-059
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-060
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-061
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-062
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-063
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-064
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-065
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-066
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-067
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-068
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-069
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-070
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-071
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-072
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-073
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-074
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-075
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-076
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-077
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-078
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-079
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-080
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-081
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-082
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-083
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-084
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-085
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-086
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-087
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-088
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-089
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-090
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-091
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-092
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-093
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-094
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-095
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-096
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-097
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-098
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-099
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-100
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-101
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-102
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-103
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-104
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-105
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-106
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-107
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-108
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-109
+drwxr-xr-x 1 root root 220 1970-01-01 01:00 dir-110
+
+./dir-000:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-001:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-002:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-003:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-004:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-005:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-006:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-007:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-008:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-009:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-010:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-011:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-012:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-013:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-014:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-015:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-016:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-017:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-018:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-019:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-020:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-021:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-022:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-023:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-024:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-025:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-026:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-027:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-028:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-029:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-030:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-031:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-032:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-033:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-034:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-035:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-036:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-037:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-038:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-039:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-040:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-041:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-042:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-043:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-044:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-045:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-046:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-047:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-048:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-049:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-050:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-051:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-052:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-053:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-054:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-055:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-056:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-057:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-058:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-059:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-060:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-061:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-062:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-063:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-064:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-065:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-066:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-067:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-068:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-069:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-070:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-071:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-072:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-073:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-074:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-075:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-076:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-077:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-078:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-079:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-080:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-081:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-082:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-083:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-084:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-085:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-086:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-087:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-088:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-089:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-090:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-091:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-092:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-093:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-094:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-095:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-096:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-097:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-098:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-099:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-100:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-101:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-102:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-103:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-104:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-105:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-106:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-107:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-108:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-109:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+./dir-110:
+total 6
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.000
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.001
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.002
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.003
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.004
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.005
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.006
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.007
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.008
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.009
+-rw-r--r-- 1 root root 15 1970-01-01 01:00 data.010
+
+list checksums from new data
+0011a72f38da668f94edfa1d50743e2a ./dir-009/data.009
+0071beb4baa599141a7e446334d58300 ./dir-097/data.001
+00873c875f3461fb9f5baa9a039f218f ./dir-093/data.002
+0120fb81269598438e84f3fe10b24658 ./dir-100/data.010
+013b8ae5c4b011b87b142e5d60645f98 ./dir-020/data.010
+0167791462ffcaba8c221426c25cf455 ./dir-092/data.000
+01936c37169cc786cdc724abbf1961e3 ./dir-094/data.003
+01e5a8bee864f99bcfde91b2f501fa56 ./dir-062/data.004
+024b1d4cb93660f125e6f4783e26972c ./dir-072/data.003
+029c1199d16bc8da2afd2fe1c47b6859 ./dir-077/data.001
+02a1c0a82771c59236eb9f337dd0b4da ./dir-073/data.000
+032cdb1ac223adf9ed45278e64f265f0 ./dir-083/data.007
+03655d081ce567a4d5fc8e0c3dc59e3a ./dir-085/data.006
+0397e01cf6805728256fa9272ab672c4 ./dir-062/data.003
+03a58cec58f7b74c0d8803e5a05da20d ./dir-107/data.004
+03b3b16547b25e9484c516f5e88e5c75 ./dir-089/data.006
+03b4ed70f96d5c693bcf7f5a479ecd9f ./dir-014/data.007
+03d8a4ac5add5a95f3d9cac8f847c8e7 ./dir-023/data.000
+03de2f0958a76e9d01389b919c69ec96 ./dir-079/data.004
+043fa6cba08946ad508ca890a42f0644 ./dir-005/data.004
+04beac49e6d1f1f9067da249f8953fe9 ./dir-041/data.002
+04bf36721c9da55b2fd6780a5a6dcef0 ./dir-012/data.009
+052ac7ff047928a4f1c0d8bf38320483 ./dir-000/data.003
+053b15396096c2751d9e32b186bf0948 ./dir-035/data.005
+058879e070d51c1e2487d481f9c43b78 ./dir-071/data.007
+05bd438d7a151ebec24cceffb792c3bb ./dir-104/data.009
+05bd9b692ef2ff2c3e2e22a582bfc25c ./dir-021/data.006
+06492dee50157f379eabbe811bcb5ac7 ./dir-073/data.009
+068c724e76dba0c887c5323de7b7a434 ./dir-021/data.004
+069379abfd9f26e203c53923443e58a4 ./dir-094/data.006
+06c36f5db0c02127dbbca75c5d7c130c ./dir-104/data.006
+06d219d83d0d2142e9f7a06372e82f81 ./dir-110/data.010
+06df718f885fd71f2568940b616528c3 ./dir-059/data.001
+070178230ea47e90d00f9a6fa1975fd2 ./dir-079/data.005
+072c1d1755a4af7855dfea3c68cf270a ./dir-065/data.008
+07cd767ef24d4ec057ab98d0b4b388a9 ./dir-091/data.002
+081029b7d8bb27f6c4f79a2e4ba67d85 ./dir-070/data.005
+08268088254256c25894c6d76902cd61 ./dir-037/data.007
+0829c20c81113eec0759e5fdd74b1d3e ./dir-056/data.005
+08310ad78cbd3d6ee1864e5c145248d9 ./dir-103/data.001
+08478c7a523a8725107ad804a7dcda1e ./dir-096/data.003
+08763d238e02d7ab57d762b58038e38c ./dir-054/data.000
+08f96bf68eea8b82bce1a5c1565075be ./dir-060/data.003
+090ed88036a9618e4c44858db399793d ./dir-044/data.008
+092baa8d2659ed94803e652be4c8afe4 ./dir-099/data.009
+093d2d4597015cae42df7d3e2e3bf802 ./dir-062/data.009
+096b7a4f67a561fa2933bbefba032c67 ./dir-025/data.010
+099bf4107ae009497abf52d6d08f5b36 ./dir-013/data.006
+09b4f5a2b49ceba752a604297ab60635 ./dir-049/data.006
+09ca2509b418b5721188ea044ef6b4c2 ./dir-062/data.005
+09d6a844a0f194f884c8bfa6ed830a0e ./dir-106/data.007
+09d9867f561d35d2de37d9ae29400ee0 ./dir-084/data.001
+0a4f9161096ecf8ff8397cffcd9bf2c7 ./dir-000/data.002
+0a54f2a8347cad7e806cd0280b617463 ./dir-017/data.005
+0ada042828a700ad2489a23473d8e90e ./dir-003/data.004
+0afd3b49f16d29ebbc6f479a39ce7bfa ./dir-037/data.003
+0b0fb72f03db99cc722d4aaf2a98e5b6 ./dir-010/data.005
+0b508b5021efe48abeafb59bce6a3f6d ./dir-094/data.009
+0b938f0fe7bbb651b1d25f7763ae6d52 ./dir-052/data.004
+0b99746f048b6e421a452e930253bb15 ./dir-056/data.008
+0baaaee1ecaeb5f9cf8b7567afd4ef89 ./dir-026/data.001
+0bbccf04109b26f8d4f1cccb00f727e9 ./dir-053/data.004
+0c1e3c869b0adaa7ce93879a151776df ./dir-001/data.006
+0c8211ef42d75892c707f022e2a7d452 ./dir-043/data.004
+0c9298aefe72004d34643eddef8f4f1f ./dir-109/data.007
+0cfcc152235ac2f1569c390084b6d442 ./dir-012/data.006
+0d13557f56667831a853d422f40cb88d ./dir-014/data.006
+0d3cd9b22b91391d17c30e79fc892a62 ./dir-062/data.008
+0da117532cade43a9b42b681dbb4d97b ./dir-047/data.000
+0db8aea5ecef040742e4d9b3baa76dd6 ./dir-030/data.001
+0dbac1d697cc77685e1fb884916c1ae5 ./dir-026/data.004
+0dbded4d22453c74ed8ca876c759c1d0 ./dir-025/data.006
+0dc89ad916055c7321ad89e135d5b565 ./dir-051/data.006
+0dcc1bb5b8c671fa906a4c027f781149 ./dir-002/data.008
+0def9e49d46f81887afd6004ba27966e ./dir-017/data.003
+0e12577e454a44866f54f99738637d3e ./dir-059/data.004
+0e20a7189f0a9d2435f3bca1c3a6111b ./dir-053/data.003
+0e387d4e1d2669edd5527676dc5aec88 ./dir-092/data.001
+0e4d615c2aafda7ca9e24ce5c4637047 ./dir-046/data.006
+0e64c356b46f76923195fd49d452cda9 ./dir-092/data.004
+0e8d99a3b34733488d4d0e91837ae625 ./dir-010/data.003
+0e93cb8206b3d92c6b377f5f0ae6c3ca ./dir-101/data.008
+0f048b9bda6f694d90e961a5f83ae200 ./dir-039/data.009
+0f5cdc65ef8473f32533e3f56dca2ea4 ./dir-039/data.010
+0f99dffbb780bf4ac5381f2f14782a6e ./dir-041/data.000
+1029e912f6ecc9305585e8333d71602c ./dir-101/data.004
+103b8e299b6ed5b47d5eb6af7d04d85f ./dir-001/data.008
+10417903b3128497ffae512e9413d2bb ./dir-069/data.000
+108c615627e3a2874ffcd0c7daf93fab ./dir-049/data.002
+10e6e1097c9a4c17aeb211a2920e872a ./dir-080/data.010
+10fb5da04134c663b0554af084e2a7ec ./dir-095/data.000
+114f6bc0fcd87635a6bf304008e9b5c4 ./dir-093/data.000
+1151ae62db155a01571d7c79ee9307d3 ./dir-002/data.010
+11b3dec2bff965af6b36670dfd7ae573 ./dir-056/data.001
+11e361b75dffbe0ed09cda638d87e2cd ./dir-047/data.007
+11e9c06c0d7c355f1bb0bf8ad3376acb ./dir-083/data.001
+11fb59cb3557081ed7219666b74374b4 ./dir-004/data.005
+1251803d9b31ceb1ee2900a8407c762f ./dir-018/data.004
+125f71c5016e92b3659070ed04f58be6 ./dir-060/data.007
+12aa5d0dac0eb51e7d22b88246282f03 ./dir-093/data.006
+12cfb3af86b7cc141a3fe9a6268726a5 ./dir-024/data.005
+132af7005255cc4b038ad9021eca3840 ./dir-066/data.005
+13c8eb071c8e8bd68421d37f925601e4 ./dir-016/data.000
+13dd14e55cda92def6f11db482434a00 ./dir-022/data.008
+13f67366ee5c8adb40e80d3a5cd17fb7 ./dir-066/data.001
+13fb236e5f27b789fc31f1cf5b1b8892 ./dir-015/data.003
+14506c18804debcebf27a377aa04eaa6 ./dir-087/data.007
+14528bfaa0a1aca63cbc80acab96f800 ./dir-051/data.008
+148cf5c5feb722092441ec87b7a5611a ./dir-025/data.007
+149b7674a92796bec7f6066bbdef9a3c ./dir-027/data.007
+14da08b2d85bfc81c0b0b92817989791 ./dir-033/data.002
+1500a4c5054d87dd61c392f33868da4b ./dir-038/data.010
+15987cb3da62f45c7aee7a0ab9518206 ./dir-089/data.001
+15c05327f337c7d7414d472fa770ec3c ./dir-038/data.003
+15ccd5a312eb772c85a44a63099322af ./dir-045/data.005
+15f30a3264c0f8c57e6d7497a4064fed ./dir-100/data.003
+16156718becebf0f975136dca6c6ae56 ./dir-042/data.005
+1624d2a4ead61cb3c8e25c21794ea679 ./dir-106/data.006
+168b97bda8aa6f795d8f7272194d1d5a ./dir-020/data.006
+168f7eb82dd7eb78c4a5221d2e581dde ./dir-065/data.002
+16cf8c6acd3cd1ca2fc4bfc9b543982a ./dir-007/data.009
+1714933b11a4a8e600057565866ec423 ./dir-080/data.009
+1745656f9601fbd5163144500eda6568 ./dir-057/data.004
+179353ce148c37425d766ea5b43dc32b ./dir-023/data.007
+17f7787457e5fd1a8601dd2375eea777 ./dir-036/data.003
+1815c6317528cafd2a1e61429d29e1cf ./dir-008/data.003
+1836fd39b05d94a860d727f972a18729 ./dir-029/data.007
+186992572e97dc0a3688b2202c066a70 ./dir-066/data.008
+18b4a437d81acf594cc1482031987f61 ./dir-058/data.009
+18d978c6f54b50bacc51b5be2a6ba6de ./dir-051/data.002
+18edf33da2c7e85b6a2d54b04f79665e ./dir-093/data.009
+1947681ebdb65cfc6a48556ea9d923d9 ./dir-023/data.005
+1969ecd225b9d6fa4029bf673dbea4de ./dir-036/data.007
+19a34f8c9016cea8d58f02b816d4475d ./dir-065/data.003
+19c3f7ba63f64cd6e84d28e974834101 ./dir-012/data.002
+1a35e19c6fab4fa1d818e6efb79a7b18 ./dir-052/data.003
+1a92fd5a4821e924461429577491407d ./dir-002/data.001
+1a973f2c00d0090607a05d608b81897f ./dir-088/data.005
+1acdab480c52a454ba5552c29516d933 ./dir-073/data.006
+1ad17c4603609a36a704914e6f91d1e6 ./dir-034/data.002
+1b1ddfb88f0cf37d96a44edeb26629f9 ./dir-043/data.010
+1bb53747be6ad8a3e7da57c60ae54bf4 ./dir-047/data.010
+1bbb6b1ea7806b92e431aa481ba53256 ./dir-059/data.009
+1befcc0040c6a3b7e936a89b7dcc8d1f ./dir-054/data.003
+1bf3d96c63f0825a0238b3c711b2add1 ./dir-104/data.004
+1bfe6367c46e50e34f9f68debe2fd9e5 ./dir-062/data.002
+1c05f31466a6b05f1d73120760421b07 ./dir-017/data.002
+1c100fa4a99a635b39826fbf32a185ea ./dir-046/data.000
+1c4070f6f2506a5d59dac63579db5c5f ./dir-009/data.010
+1d286ac5a7f4477b07cbf2b8fa608f31 ./dir-022/data.007
+1d842f952850ecb07b9f8ab59cdbbdfc ./dir-074/data.009
+1dabe77be130077a1e2de7b1b243638f ./dir-108/data.001
+1e4b90e70c5531193b82cc3b615853a3 ./dir-083/data.010
+1e4b99c0c6c97cbe59c01b6b81cdd55a ./dir-000/data.004
+1e6fd4ee4737ee447ade2165104f4dc3 ./dir-044/data.001
+1e82a5e977e75d6ff12ba4e4b8121994 ./dir-025/data.001
+1f0a7ad9330818153e6d13705389f506 ./dir-098/data.004
+1faa10ff54c51e9e6a691d2020b28180 ./dir-013/data.009
+1fbafd0531f5dbf3e84a85c3afef7159 ./dir-091/data.004
+201882708185fd15ab164826e7e4ab3b ./dir-007/data.005
+2028e25ee7ea2410b05c96e2531999af ./dir-008/data.009
+204f64ca934489c9c321b7716abe6137 ./dir-013/data.010
+209ca1185749f5f760f3c2b1eeabcf94 ./dir-080/data.007
+2104bfa0d5cc81662f0f251dc88ed1f0 ./dir-002/data.007
+213356c6e050aa1f44fdb67554d9987d ./dir-100/data.006
+21ce95875b349ac8c4a5661ec7fb1c5a ./dir-108/data.009
+225117899bdd50b6fd754fac468523e6 ./dir-046/data.004
+22c7c4d61b254e67bfb62292f6813300 ./dir-006/data.009
+2305cdd515ea03e0e3d9dd7893c48e5e ./dir-093/data.007
+2343947bcb2aca5a583434e20b9afe83 ./dir-031/data.001
+237c5d3b7a556670a119b6bedf4a7a44 ./dir-064/data.005
+23887fc97d5de846dbb9b26fe48560e2 ./dir-105/data.003
+23e98c99c14dc74bf33f40f8438d5947 ./dir-035/data.002
+23f2dcf6bb0454fd2058442ab6c92b32 ./dir-059/data.008
+23facd50784b91efe2e5e81678bf04bb ./dir-069/data.006
+242be68b3720e5868e7f7652da5af043 ./dir-006/data.001
+24a863973f8ef674b357e1189b40de69 ./dir-060/data.000
+24c9f4371c9367eb54479198db061748 ./dir-070/data.010
+2537510cef5e66126ab4a5f2038de98b ./dir-011/data.004
+253e7dc0307e545fb44fb5e621883895 ./dir-002/data.000
+257394c9dca3db7e737ffa1d0419317d ./dir-074/data.000
+2585dcfae46bc4c444f34416e48da371 ./dir-050/data.009
+2595c5d5f15648f5b784cc327a0b9480 ./dir-077/data.010
+25d83de09d075036c37f4fa4084e81f3 ./dir-066/data.006
+25dabb63db7e69e49a20078e3f1c7398 ./dir-103/data.004
+265905e58360d4ee4cabe7fa24eb49bc ./dir-086/data.007
+269bc4b7f4d16c66907d450356661b6e ./dir-088/data.008
+26b6a74e3dabfd3c9a465f7053387f19 ./dir-013/data.000
+26b71d2a0e43c9837d567662bf9c7a01 ./dir-036/data.006
+26ba9e7bf1ffa275602ac235642aec22 ./dir-063/data.006
+270c63b19d9b4c9866df1a7a9d964ba3 ./dir-058/data.001
+2747d5dfdbd4f5ce76642911fd1cd7ba ./dir-037/data.006
+275719a7d2e10fd0cc0dbd406a5dd284 ./dir-030/data.003
+27974aa4801a7c3af842899272b9f6d5 ./dir-032/data.002
+27a1a827d803996650be7554790209bb ./dir-098/data.010
+283c9f8d3dc59cff4850ca6d976545d0 ./dir-010/data.010
+28503c859c89b5d9953f5bf084b44409 ./dir-096/data.006
+28ba83018c7f8d79a4bfb2aa94ecf777 ./dir-107/data.007
+28f2c7408277657e4c2c5b2e8017bcaf ./dir-088/data.006
+290616007d76bbe05a61c73693a9b070 ./dir-001/data.010
+29092e94be3e74a246c24383f920753f ./dir-035/data.006
+2957ae96634044a42bbc4bb0707cd202 ./dir-067/data.006
+2a11d7eceb35d8ff8248f0ec67a4ee55 ./dir-004/data.002
+2a39f7493e5646a38e9f71eb202dbc2d ./dir-029/data.005
+2a4b4ff47d7ab9711757637f480c0586 ./dir-096/data.004
+2a5a748d65991f63f6da39a97a22ccfd ./dir-108/data.000
+2a8860739f9d2dbda65e4d852e0fd309 ./dir-076/data.001
+2a8d705b90b82af455acfa7d9c0fc3c9 ./dir-069/data.009
+2ace4b0d8ef122bd918e8d538714ee73 ./dir-084/data.002
+2b08c2f1783f865051369bf41b47f960 ./dir-023/data.003
+2b31b68d17ec63b0e1a50176c49030e4 ./dir-076/data.007
+2b360e9c50225e1ebf8bf95fc0939e2f ./dir-006/data.005
+2b545e6e6ca3b6638b618c34aaefdbf2 ./dir-100/data.001
+2b5d18108e0309354b4f80b185e2323a ./dir-057/data.010
+2b82448e6fccac3441d9f7d7a13074d4 ./dir-031/data.007
+2bcc2819a288ee4ec2c9c00c585f67d9 ./dir-027/data.001
+2cbc9b3922e5d75a8c4e575e53065f2f ./dir-109/data.000
+2ce7c9d5e1a4aed1e9dec1aa85021f4c ./dir-010/data.006
+2cf7c6e038d3744275d8ffb8b4ab52d0 ./dir-096/data.001
+2d0494a350a570bf86596eb5dcd3e575 ./dir-059/data.007
+2d1cae3d5151bebe12ae7d97d9efb92d ./dir-008/data.004
+2d27ec0d318cf56d8ecc226a972db677 ./dir-027/data.002
+2d392a7b3dcfa6ee1399de9416a41b60 ./dir-083/data.005
+2d4433b6e32bda8e563f042fb799e86d ./dir-110/data.002
+2d70c129d857d22a8266c2e5f3ee4563 ./dir-048/data.001
+2d76b9784bbb68c670aeae134f1c6c32 ./dir-095/data.001
+2dbef0445d1b450b88b9e5817741f295 ./dir-072/data.002
+2dc184e8ece7744de9912d4671f2f116 ./dir-044/data.009
+2df5877dff7f77e48aa45bb96de9f362 ./dir-071/data.010
+2e03f7b258d00c0c5ff10425a701b457 ./dir-082/data.010
+2e0bf9030092dd77ed44cd7a25497496 ./dir-072/data.006
+2e0ee79666904e3629c801f2e39eeef4 ./dir-009/data.001
+2e43ada234775adb77188a840eee1525 ./dir-020/data.009
+2e648a138f04daba3ec30d9ee8502a03 ./dir-028/data.002
+2e90cd54f80352ec7d03fa98737245b5 ./dir-034/data.009
+2f253cb5c065c90cbc5d6667413862a8 ./dir-066/data.009
+2f51608cd1c0aed64f2b0b65fa1020c3 ./dir-025/data.009
+2f8d68bc8ec1c5db8ce2f70c87f91e68 ./dir-067/data.003
+2fa01a6b14ea91c02460c0beb70f69c7 ./dir-003/data.005
+2fd76fadb124c701e852763131480457 ./dir-009/data.007
+301e96925429a577cffd3805c2b6781e ./dir-060/data.005
+304d034c10c3f2e8659b25049028dd60 ./dir-104/data.003
+305eb027ab22375e29f6ce544fbd07bc ./dir-063/data.002
+30a44eacd0af674f1725fda3b7448f4d ./dir-101/data.009
+31179c50bc1553cce235c9aa625c16ae ./dir-105/data.010
+313fdb8585c16ffdeb009c0d3256a3b1 ./dir-078/data.000
+3169cdf524ba2005644d09ce2d72d694 ./dir-100/data.000
+31c5b7365750ca7fbf789c4ca325018d ./dir-107/data.009
+32928650dc72f8810007effa8db00119 ./dir-035/data.008
+32af92e23e453c72417acf56d3ab6fde ./dir-033/data.007
+32cf1dfcb9bd72353f46993006cb2d0c ./dir-003/data.007
+32e3f72b1fca5ac3176e8dbe110e757a ./dir-104/data.005
+3398bf733d4d26a7a8304740381a8333 ./dir-036/data.008
+33e82dbebbf710a1b203655510443ff1 ./dir-037/data.009
+33fc502a0d0616f76551446ef1965c30 ./dir-065/data.005
+3481e8b218141e6e6dc9b75296508b15 ./dir-033/data.004
+34a1997ca886d7c13ba4936f4c8e0daa ./dir-019/data.005
+34c9936c46a847152125e583839c12c6 ./dir-043/data.003
+34f102b63e5308964e2f9725caf6ec2c ./dir-088/data.000
+34f1627786d8d7715842af2bcbc92dd8 ./dir-022/data.000
+357671e20f590900a3869bc29dbee1fd ./dir-051/data.009
+35d3a1bd5dd1a3f7d0b50fb2c5406645 ./dir-039/data.003
+35ecc0144bca35f519985aaa15be26cb ./dir-106/data.004
+35ffbe6e62da5b0ae9c06363600b0715 ./dir-049/data.000
+3603dd8c1f2346ed0770aa548513eb34 ./dir-024/data.002
+361b845aa30dbd442cf2f0b87ad4741a ./dir-055/data.002
+361fd9b6648f95ff7eec8d717d179bc0 ./dir-089/data.008
+36270a415097865dba68478f69628db1 ./dir-003/data.006
+3653a989b9764b2fd530324a98ec8218 ./dir-067/data.004
+36551af77706ae56dc228c1151caa7a6 ./dir-062/data.000
+36b55f77570d1b46380d6018f52661e7 ./dir-109/data.004
+36d68b9cfc51aacce08065d37eb500c6 ./dir-102/data.003
+36fc31babad89ef26acd0337a79286d3 ./dir-049/data.004
+3704c5fd6a446d530bcca18004f2b31d ./dir-081/data.008
+3707760798d4e50da70bae0e8d2c4c28 ./dir-095/data.010
+371719fe5cd052be2a63c6444ec77413 ./dir-044/data.002
+37594be41d8293c0351865a708e2af05 ./dir-063/data.007
+3790a2bce420a800ff76ddc55d4c0d0b ./dir-086/data.001
+37d9e0f2d9a39dbd9fb06c4dbc1d932e ./dir-065/data.000
+38131b5fcb1ba7f74bc3fb89091d67fc ./dir-104/data.001
+382085df5f142fde02b492569b27f7d3 ./dir-078/data.001
+38307eabf1109b786760384dbe7013a2 ./dir-074/data.010
+383aec3d236bde3134bbb811487594ae ./dir-071/data.006
+386bd313b7144bdb7121d9d3cffd8019 ./dir-095/data.002
+38837c036576ad2afb1382e10d229658 ./dir-109/data.001
+38993a904f2d37087a5c4ed413d331d4 ./dir-081/data.007
+38d82c4bbcd2def41636f02151bf5319 ./dir-084/data.004
+392ccf5865fdf0dcfa599034934e4fcf ./dir-072/data.009
+392d6c23d5b6a58ba4553cfef5245191 ./dir-109/data.009
+3973246571d48f5fbe9ddc337ca2c8c9 ./dir-017/data.001
+39de945a763bd83bde787879294c9b49 ./dir-005/data.002
+3a4f397262e2b830fbaffed4d03b37e9 ./dir-016/data.002
+3a8363fc39e4211afe3ede5688f94705 ./dir-077/data.004
+3a897a684dd2b32b4fcc2275988fd080 ./dir-018/data.008
+3a94ca85ac994f47e8010011fc5c9582 ./dir-000/data.006
+3af8ed9c599b06ff2d99fe5563380c30 ./dir-103/data.003
+3b1922fb43fb222b573a9f44bb805e0d ./dir-029/data.009
+3b72b8b4984cd51e67ed03f59da716b0 ./dir-023/data.004
+3b8a656973178c5815451d8c64fa1d21 ./dir-009/data.002
+3ba72c45fd0177d48f6a7a5121fab5a5 ./dir-003/data.001
+3bebd9b6fa4aeb9772ca238fb88ddcf4 ./dir-073/data.010
+3c99ce08823c1c1b24e1c77574cb7bdd ./dir-075/data.005
+3ca50a374e0c46ccc35caba06244a592 ./dir-073/data.004
+3ce0c739083cc21ae6f19eb377258fb3 ./dir-097/data.006
+3cea42052a833a1c65ab6d3de7db95ff ./dir-044/data.005
+3d05c1ebb7adbd72eae064b2b16ed5bd ./dir-015/data.008
+3d362d4af7ac442b0be8a6e1eaed1222 ./dir-058/data.003
+3d3fa69ef78ff4eec72c4a7d62d44320 ./dir-057/data.001
+3da10311ab35b313bcea0b3dcd3ec320 ./dir-085/data.007
+3da5bfc1f121da4a35c5c1a26bdf2871 ./dir-080/data.006
+3dfd203b61606012e3fe4d794026de45 ./dir-060/data.008
+3eb835385bbaa4c12dc66ad5a5787ac3 ./dir-110/data.003
+3ebf14bea5f774ed68dc3aaecfd4c7a7 ./dir-086/data.006
+3ecabfe3d7e0f39d1b77feb30bb2149a ./dir-108/data.006
+4017217c1fc3620f00a63bf7451d7d58 ./dir-011/data.005
+40565e6e9eaeba9538e068d7fc212025 ./dir-030/data.007
+409803908e1249d811421fdf5e7221aa ./dir-011/data.006
+409f1a5df32b48cc615b80f895333125 ./dir-070/data.006
+40da236dcfb37628a7383f110a34ca91 ./dir-018/data.003
+411bceae3a164955533dbad618dcdb19 ./dir-042/data.000
+4129b05173c9dc800c811c1c6ab554f5 ./dir-046/data.008
+412efdab02674ab591ee02c1e5f31d0f ./dir-102/data.005
+41315d3d575108a52e0fc5b07c503177 ./dir-034/data.001
+4141aa05325ffb5c530391d899cd2bcc ./dir-099/data.003
+4174e6169d645307ca8675205d40c853 ./dir-004/data.009
+41bcffb4e71780db8fed9818124e5b6c ./dir-063/data.003
+41ce67b35ee64b9e86c13efcfdd26ce3 ./dir-050/data.010
+434b0fa579b255430214de352151d112 ./dir-041/data.008
+434b26f00c175f276a54105171251d52 ./dir-106/data.005
+435ca233503eefbac946d3ca654f9cc0 ./dir-072/data.010
+437ba3bb8dbb675b158dae0f59d6a445 ./dir-061/data.010
+43c49573357ed53dcc2e364ce112b62d ./dir-061/data.005
+4404b6e4f59a841fe9a3ae2e41c4c488 ./dir-071/data.000
+4426aa424dd25ce972b63b5c47b9530f ./dir-090/data.006
+4448d6c8b60d7a4b08b534ac1059d668 ./dir-089/data.002
+4472ba00b77a4dce904589c457b1bc97 ./dir-106/data.001
+44861e8e164ea51709c069fa286134c6 ./dir-056/data.002
+44961468f08ee80c619adf0154e96a9f ./dir-101/data.010
+44b702805a58f14493bae3c2f2716dc7 ./dir-088/data.007
+44c7d952d5b9528c1263ed11b5dc2ae5 ./dir-012/data.000
+44c825fbf1d23fcabf45e42e395423cd ./dir-085/data.008
+44e3ec8f10255d109773f3204a5020e9 ./dir-022/data.006
+45034f1052987e5d9e2d4bc0f463ec7a ./dir-025/data.004
+451ee4f9e926765a2c07f89b1a2fe078 ./dir-000/data.007
+452b4b43200d2ece30016ae96415718a ./dir-084/data.009
+4535f5d99abee30fe2e0d67098dabc62 ./dir-098/data.000
+45622ac4ee28752eb56eaccfb5462c50 ./dir-016/data.010
+459ba24d0e03a81f8f6ed35700f46460 ./dir-101/data.002
+45af2dca2eebc714cd0ad63f77ceaaa6 ./dir-040/data.008
+45be06fe6e509b43b6f68c52835d54b8 ./dir-016/data.003
+45c250d9570716010f4161f1bff5e450 ./dir-026/data.005
+45ed7a5a54578d5985153ff70330c228 ./dir-011/data.008
+45fe9fcae165a9d88afa27fc3c933406 ./dir-095/data.008
+461b0786590556a5729e1e23512db49e ./dir-037/data.005
+4647cb2043f623bae8860e7e8b58834a ./dir-013/data.008
+468171cdd32b0e94c96a9be1f298738a ./dir-044/data.000
+4690dd33ffa2329e5bc456ca24ec7f72 ./dir-031/data.009
+46f75198e440d8dfb43207eb4965c2c6 ./dir-028/data.006
+4710eacd6b6df6fc6ac2da5ebca94546 ./dir-003/data.009
+472cf0ecd1b1691bfaa8d5fb86c21366 ./dir-075/data.002
+47344f3f3f3a806ff636267eb39369e0 ./dir-082/data.006
+47d6c7304f9210ee16dc2dc5fc2a95ed ./dir-048/data.005
+4829f629b1e545f4cf68f50e9f5e6209 ./dir-022/data.005
+484a291638f8224eb40442351f3e7f41 ./dir-054/data.006
+48e42891bf2fe053538884127b0a50ce ./dir-021/data.001
+49077e5943a100b6771a44be07704a4b ./dir-010/data.001
+493e84baf6c02b38324071c87f0afb4c ./dir-024/data.003
+49a02c341e5de4bfd938ea0326ddd811 ./dir-096/data.009
+49b11279f83f22ff537134bbcc84ff92 ./dir-099/data.002
+49d6ab85b50ab5386f8282a7b98a2083 ./dir-026/data.002
+4a1113a862eec6fc1a29a75a985f02ca ./dir-044/data.007
+4a209585e44265cb0f363756602fca0c ./dir-027/data.010
+4a3a6543fefb560f2383615d905a6a96 ./dir-053/data.007
+4a4c1cc3c778ca8a5ece35295591c423 ./dir-089/data.010
+4a8a0e0c68ee95b541bcf37ceb6fca38 ./dir-032/data.000
+4b7be12f2afafa942663af88a2a34797 ./dir-107/data.002
+4bdf8bf31569a06880b85e176703d3c5 ./dir-038/data.009
+4bf489ff656fef7ba0f643ce64f3abc0 ./dir-038/data.008
+4c010f92cfd01db492b981f234a68437 ./dir-015/data.009
+4c7badffa374dc118c81ff0d04f316b4 ./dir-032/data.007
+4c8f651cae18db445c8bb03efaf57622 ./dir-055/data.006
+4cb4c1f1d3bbf4fda768b972661567fa ./dir-033/data.001
+4cbc6cc296c87027ed9695c018ab5307 ./dir-068/data.004
+4d064d4959a79abc8e3d073675d6c001 ./dir-002/data.009
+4d0e137ae9bd6e011cc974daf47e514f ./dir-020/data.007
+4dfae4a9ef4e894b3cd8209a4ae78bce ./dir-068/data.006
+4e0f932047dc3244c2fe215002ea8ad2 ./dir-099/data.000
+4e26ef37e9c5b6925ad2938e9b5d68f1 ./dir-043/data.006
+4e41ff62e105358125e0b0330a042fdc ./dir-001/data.007
+4e45a4b7ccbd79003283b6e47d69327c ./dir-093/data.004
+4e548f34d5bbeb56fa7eb58cb4222837 ./dir-098/data.009
+4eb2096e115b6e2e7639881ce734ca09 ./dir-012/data.008
+4ec96ab3466c9011cd1555abe6992acf ./dir-029/data.002
+4ec9bd108f0df0b186f0777b60dbe941 ./dir-011/data.003
+4ed5125c06e4188a8e73369cec758b9d ./dir-028/data.001
+4ed6c21f5b75c31336cc7873e795ea4d ./dir-063/data.000
+4f14cfa2698af420ae1ae5e40ce45a5e ./dir-033/data.003
+4f3ff759eb10d55898f3b189c6b8c80d ./dir-000/data.009
+4f66d35fac82aa35322ad3cc5b6905db ./dir-001/data.000
+4f898916010eb8aadb72e455d5b821a5 ./dir-051/data.000
+5026fd8e09c8daef0a1da96a28833150 ./dir-081/data.005
+50389a4e73a9a472b5a5c4a8910d7e96 ./dir-011/data.000
+503b514c984dae8ff69f8bfefa824fb9 ./dir-016/data.001
+5048be8c2e8e765ddb63c3b371852b72 ./dir-053/data.002
+5067419869faec43f85c8c327c3d378d ./dir-008/data.000
+50725a5941d26b2947677bfe0c7761fe ./dir-066/data.010
+50771c76a8213245be499adf1d4311d3 ./dir-100/data.004
+5118ac53d3c7b31072833f966efa7e9f ./dir-064/data.006
+5144c4da0e2a374d95ff48a34c3297c9 ./dir-092/data.002
+514b076e0f0511f216379950f2714f90 ./dir-024/data.004
+515ee463937cf2a3ff157b7891f96eb6 ./dir-052/data.009
+516264e6cd37058c67a6791d59482dda ./dir-080/data.005
+51632cb7f44f5bac30f5d6f4a9edec79 ./dir-097/data.009
+516e6bbb96f69262d57f3a660bc801b2 ./dir-090/data.003
+51ce73b1230c06d1539e6de542b63006 ./dir-007/data.006
+51dbe24d360ca38feac1b436754f9b4d ./dir-089/data.007
+51eaedbaf33988a48e6af65a5b117d38 ./dir-016/data.005
+521dd773fc4171de150b5f8995a88d21 ./dir-009/data.006
+52693bd5407a2471cf5156afefdaf888 ./dir-027/data.006
+52731e0ad3028c530bb4802a4754c408 ./dir-008/data.001
+52ddff97b316a494f4737e0614850f57 ./dir-069/data.002
+5301844c968d05257f1e6531e8ce0d54 ./dir-003/data.008
+53763fd0a894b8e121c281cee01f9402 ./dir-068/data.005
+53d4507a2df8d22076d81da5c0100ebc ./dir-008/data.002
+53f5cc09d57af60fe72559eca2f1a603 ./dir-011/data.007
+546662c6282b5d422413f53037df0d54 ./dir-073/data.001
+5482b2507dc94c8edde840b619b34944 ./dir-081/data.002
+54a6b5192a4fb2d1f2b26866d13c05c2 ./dir-088/data.010
+54c3a5328276de092919bf966e9dd7ad ./dir-066/data.003
+54e78419ba7cf291e26f1160bcd09469 ./dir-028/data.007
+55241d2474b0bee70f50e7629fba3a10 ./dir-070/data.007
+553e65cb3ee0a9a5572826ff4401487c ./dir-054/data.002
+55adf518280a54532de6c33c258a8e6c ./dir-080/data.008
+55b8d57f3beec6a8075221f08752ff42 ./dir-102/data.004
+55c76bdb82f8fa4e0d22f9e41ad3ad0a ./dir-075/data.001
+55c8d13f682a62306c8d29746bd7e6fa ./dir-026/data.009
+55d59fcb49c07ef165b3108621f08ab0 ./dir-071/data.001
+55d66d74201a3a3e5b2d53f9fbb52bbc ./dir-019/data.009
+55d891ada51edc5dec3837cba7c5f2fa ./dir-041/data.006
+55de7aed4c69e32378352e6dd9a3e5ce ./dir-057/data.008
+569f645920cb1a54093de547cd92f337 ./dir-085/data.003
+56ef2f747789aa2ab1ef6c7947b50ed4 ./dir-067/data.000
+571ada4c832aa9ed66403352b06a07df ./dir-016/data.006
+574ce2273f4e17cd6739a1772d43fb67 ./dir-090/data.001
+587e740432de54932b49f4b0b1a9d8cd ./dir-067/data.008
+59226032ef2efb991fffc5d2d2a67dd0 ./dir-098/data.006
+592e2927e0468af2a86bb10e2a5cbffc ./dir-068/data.007
+594f1a21b98ca4a8b8981164f46edd0a ./dir-023/data.006
+59a3f6ffb6432a768ffcfc390ba0d5e4 ./dir-005/data.007
+59a5751a44478789aa08853a7fbcb4fc ./dir-035/data.004
+5a034a2cdb1b397b435c7119a725e622 ./dir-108/data.003
+5aabd813ce725146f47bc73d9449b50e ./dir-107/data.005
+5ac445c2b46c50497deb1e2df3987646 ./dir-065/data.006
+5b62c14d607c393885cd0a77b445a0e3 ./dir-014/data.008
+5b8b4050492565d8661a4431c7d9f0f3 ./dir-010/data.009
+5bbac4ec67fa84d40d8a8a4ba9d00d31 ./dir-015/data.010
+5c0252cdd7cd0d144583c673e26a4cc6 ./dir-042/data.002
+5c1840580df0a528059088e45f23f837 ./dir-091/data.010
+5c24175346dc431720a833da4348aa78 ./dir-105/data.004
+5c2e4b18bb6e78ea09b958f03ba0e750 ./dir-068/data.010
+5c4c416cee200ee67bec2029cb56b6db ./dir-077/data.002
+5c535e14b7cd449a40893ee6a22f60e1 ./dir-031/data.006
+5cd631f166a2970f7aeb8960ace0f8ef ./dir-082/data.000
+5d6a823c24460b343c6e1cb74f9bdb8e ./dir-038/data.000
+5d869905fdbd4409d87d484db8cfd7ee ./dir-058/data.006
+5de94c0de3c4688b56b0d2fd2a892b98 ./dir-026/data.010
+5e5742ef3a3e4f4384ecfbd9663a18eb ./dir-105/data.006
+5e5a607a9b6945a1f4d17922466f86eb ./dir-028/data.008
+5e824e0add90548b50e8def0e0ea15af ./dir-051/data.004
+5edaeebaf220564c0f9fae53cab3b8ad ./dir-064/data.002
+5f2ebfc0810170305609aaa17d3b61a3 ./dir-096/data.005
+5f495116cabd24317cff89e1b946f93b ./dir-068/data.000
+5f82c03aee04bbc7b13bbe81d86f39d2 ./dir-036/data.001
+5fb6b749a06a1cd8e9e8b29383bfbf4d ./dir-090/data.008
+5fc369bef72f37987eb22899e8abe816 ./dir-076/data.000
+602dfd7dc13dca72e5cdb2a55d10e2d7 ./dir-005/data.006
+603c4a2b2591514fe3f89847fe45c9b9 ./dir-101/data.007
+6069799fce0384528b5b6f2978a5923c ./dir-101/data.001
+60a16f4eba5fcac35a449692e475ccae ./dir-088/data.003
+60a3276323425d3942c38a9d916fbcac ./dir-039/data.008
+60a658d52f59389789cbcfcaab41a1d8 ./dir-063/data.008
+60d6c79df48202637082c2213d4ccfdf ./dir-075/data.004
+60d87fb1da7baa439822269fd05467dc ./dir-028/data.005
+60f939a750264ce597002a4c5aa38b0c ./dir-012/data.007
+61724bf9d882734d00cbf2174586cf1e ./dir-081/data.000
+61baca9d4f0c0e1ad440f516eeeccf24 ./dir-040/data.002
+61bd0e648bc1911d452de89d4edcac81 ./dir-038/data.006
+61e13adcedfa2dc97c6fb131c48143af ./dir-078/data.009
+62102e0bb6e4a034d0df190864d3034b ./dir-078/data.005
+624fe86964a8866aa072ca98944d1cfc ./dir-072/data.005
+628a3ac4c873a169d8a3fa9df6615f4c ./dir-109/data.010
+62e10821dc2f80b608f7d789fe83923c ./dir-060/data.010
+633726cd4b41178c5506dd2b2eae0281 ./dir-012/data.005
+636f3b4bbc5e0d8b9042f1dbb35079ab ./dir-074/data.008
+637db8942597652106bd84d1c15341e4 ./dir-097/data.004
+63eb33e88241210c050942ca97a576ec ./dir-040/data.007
+64046b982a59442839a2d09b7470cf52 ./dir-053/data.008
+640b550e180d7c42c2d44f2ed2d7a43f ./dir-015/data.005
+642aed69a28a94bc3fa488fc6527b20f ./dir-016/data.009
+64bf70a1cd945cf459a07ec4631eaf0c ./dir-098/data.001
+654eb3426a0cfccbf51d147f29f8eb4e ./dir-022/data.001
+65bd86cae100830f420cb55dac2e15a4 ./dir-110/data.005
+65cedc58f0c41c8fdae422035b3750b8 ./dir-090/data.002
+666402e134e6ff70cba029c9852b0f97 ./dir-015/data.000
+667548fd68810e209ea97fe7b3fca1f6 ./dir-012/data.003
+6675d5082ea5133f6831499c95739594 ./dir-011/data.001
+669ffc163b66fc3abac6611758613a5d ./dir-089/data.004
+671e2b2280638d8e1d3a8f6b1d7ea8e7 ./dir-032/data.004
+675de03baf8db6f80962ed278b6e7a11 ./dir-110/data.000
+67a8ef2542009e755df5c9ac6f853d80 ./dir-026/data.000
+67bd34a30a05eb26b3f62a075cd856f4 ./dir-038/data.002
+67cffaada9805a90b11355402e635cae ./dir-056/data.007
+67ddfa9b4150737deff4914cb35fd713 ./dir-027/data.008
+6820b342440583f51722b9eb61b48d63 ./dir-088/data.004
+68336b681102e16e64f88a95cf470b72 ./dir-038/data.007
+683aa79bd3cdcdac7aa10ad1e2b0e028 ./dir-033/data.000
+6856991caa694e83caf6c0fca0233b82 ./dir-092/data.008
+68a46055103f6e733e5cceb707f6dd0f ./dir-004/data.003
+68e9e651dc7a564de214b282b9b5c757 ./dir-008/data.007
+6907dfe18a37643916742ba964bdab5d ./dir-027/data.005
+693f9c8b20a8a9279c4d43c80c3fa984 ./dir-097/data.008
+694e99f3b5dc56ba062fffe8381f8731 ./dir-000/data.001
+695cdc5bc7ba46e6aa38950daab71636 ./dir-050/data.005
+6967af8156573e442a1b6bd56d0a4893 ./dir-035/data.003
+69c1a52d538a67bf2a7e5c33379533b8 ./dir-017/data.000
+6a1bd41da62d260f746e0b01c7a13403 ./dir-052/data.000
+6a71aa155d598b5ad2fd6756da3c278a ./dir-098/data.003
+6a85596f81522c38c958910a4c0487d7 ./dir-060/data.004
+6aa3bbb45b6231513e0bee62e9a12a9b ./dir-080/data.003
+6ae19e39f7857f176f021a8cfe768a66 ./dir-023/data.002
+6af7255b3318607b1d5a7894d8caac25 ./dir-082/data.004
+6b780e7f72be3df9db712580acafd0fa ./dir-102/data.010
+6b7cadcbf875ee5ad53b47298abfaae0 ./dir-080/data.001
+6b8533dbffebb6ef2c1fd48e1df6ed19 ./dir-050/data.004
+6bc9e3203e2738ee225be6a45da6d077 ./dir-059/data.010
+6bdfbab8a4b20d71aca5aec66cf4c07f ./dir-071/data.002
+6be3c35f28f68861840f0345f70ff511 ./dir-011/data.010
+6bfa83d47d895ac06f74abcdfe24dbd5 ./dir-067/data.009
+6c324e185cf24623b8eab7daa010e222 ./dir-023/data.008
+6c32f3d5d270bf507f57edf28ac20214 ./dir-105/data.009
+6c8cb56bd81e30ebdb0167ea9c37f14d ./dir-001/data.005
+6c93aac45d9e019e7beec4a708a3033f ./dir-087/data.008
+6caf414d04c342f829887570993579d7 ./dir-089/data.003
+6d2229a029fe6481590413f2db98aa02 ./dir-002/data.005
+6d2a24dfc83ec50692a139bb2c4c61d6 ./dir-082/data.001
+6d38deab9a096a0487e9318265837589 ./dir-022/data.002
+6d3a2f17df2c7210851a2c0d52393c0c ./dir-023/data.010
+6d75df376c491371990eb1de004227ea ./dir-067/data.001
+6d931b032c977bd48eece3900cb75cbc ./dir-031/data.010
+6dd22b9dda6d6347c1bd9afec4793a4f ./dir-070/data.002
+6dd7811a0c6fc4d0742d46707145a3e5 ./dir-004/data.004
+6e32a7359307837e8ac9823de823555c ./dir-046/data.010
+6e5cc8f5f8c2a07b9de4a8b781d5b5e5 ./dir-050/data.006
+6e843730df663e5647de7ac5bd45a9e4 ./dir-074/data.001
+6edd462bc21cf66cbcba400669a8bb5e ./dir-007/data.010
+6ee09737e92a796d494ff85721185da3 ./dir-079/data.001
+6ef6e7d86580f5d0f7736bb57e93f4b2 ./dir-048/data.009
+6f314ada6407cc32b1f3e8d903b5c9b5 ./dir-017/data.008
+6f49da0120119efa5e4f89de195b4d2e ./dir-048/data.000
+6f69257227a260127a65a133508b0319 ./dir-109/data.005
+6f86c9c9ddf31fff41a6e48b52e05a06 ./dir-078/data.003
+6f957949973905e40beea6e33e465d0a ./dir-092/data.006
+6fbe3644be2de3423204d79bce06c40f ./dir-106/data.003
+70296c938c1220bf726197fc521c5da2 ./dir-083/data.006
+7047e1b8a6351da3504977a4c96edb72 ./dir-097/data.002
+7051be81c22bf0e394e8d89a6cc78a20 ./dir-028/data.004
+7077cac646a5b37a418664d366de8d2a ./dir-086/data.008
+70c913bbc3454d3af1d3b97a0851b903 ./dir-085/data.000
+70dbb0dcaf2612b4952b341651ad0c1e ./dir-065/data.007
+71214fecdee78675ad95b492df4017ef ./dir-040/data.004
+7171c7a1796cbc2355c6adb03c312daa ./dir-032/data.001
+71841f91ab1c873938ff4b4f018b2221 ./dir-014/data.002
+71a2294412b3029f236a254cb335ac98 ./dir-103/data.008
+71a6994ef2bf8368aaa2362bcfccdca7 ./dir-019/data.007
+71b4da91bd5142d3342d67d322fef2e5 ./dir-084/data.007
+71dbfc9057fca54a5a183446775e32b8 ./dir-016/data.008
+7214fcff02d0743210d754a37fb98b0c ./dir-102/data.008
+72ce0ff3d78837675c538e6a02a67557 ./dir-068/data.003
+72edc28e71c24a8c04faaa3c2645d936 ./dir-064/data.003
+72ee0b7f236d0c1de171c8618a8e8c7f ./dir-078/data.008
+732b1e0f0ab56898793589bef25f29f3 ./dir-017/data.006
+73bcb49ca5ca609cbb65147cfd405f3f ./dir-105/data.001
+73fd28f9099c39d6d2c92355c060d6ed ./dir-068/data.009
+74374dec8765151f8270209dca6fc5c6 ./dir-098/data.007
+7502ae05db65a32459a2b97996419065 ./dir-046/data.005
+752e6e003b2a63ee5329d9629fc11e37 ./dir-066/data.007
+753b5b925a36ef26874b53df2ebfa061 ./dir-075/data.006
+753e065141176ff596bf2e1ae61ee7eb ./dir-051/data.007
+756432d8f72aad038e5485bbe24bafaf ./dir-106/data.000
+7565d1674164a015c42a2f5011cc087f ./dir-000/data.010
+75aeb3ea4fbd1d50430bbe04e2932b16 ./dir-093/data.001
+75b713f785ac4a9b1d088421f23ed1dd ./dir-008/data.006
+75df7f36eefa42c3638bc5b6a97d55cc ./dir-062/data.006
+75f4acedcce3de89a05b4c098b4f8118 ./dir-084/data.000
+761c8e415dfea226f53be2957780ba69 ./dir-000/data.000
+763c7d41210a0ca975eb99d0e17f4b20 ./dir-058/data.007
+7652846932bd547c814ea86462891fe5 ./dir-036/data.000
+766be2a004cea2f84f9aeb40eb9e5124 ./dir-006/data.004
+7672a3a631d8cebaeeb10b4eeee2f374 ./dir-097/data.010
+767d0c476c9468d63e0871af2cef1738 ./dir-060/data.009
+76c9efefaa60ee3fba78597b33c5f575 ./dir-090/data.004
+76e0a18196e6b9e8f1860791d5e70146 ./dir-075/data.008
+771b05fea5ba6da4cdba84683c070c95 ./dir-053/data.006
+77586b0c211ae906be9094d049370678 ./dir-021/data.003
+77c306d850bed70af9a433a685820431 ./dir-050/data.000
+787d7e089b2520fb323825c0f34f1019 ./dir-047/data.004
+789ae7e99a3a3ff41688d0da0baa5491 ./dir-049/data.008
+78bc020188a5927d1bdd8a00916e7bdc ./dir-047/data.003
+78e4a29d866eeee6f16dac2923ff9039 ./dir-020/data.002
+79adfb3d2a7487932511a5a4279b61d4 ./dir-027/data.000
+7a27a666e2737841367056a9d8fd9d5c ./dir-060/data.002
+7a53dddb70aee58e5661427249ee7038 ./dir-076/data.008
+7a95a94fa02effa09895b4cf9f806fa8 ./dir-053/data.009
+7adef604167c2a7031d11a61876f5e3f ./dir-056/data.006
+7afcc18fdeed24a4b6582f0cb8c8d63a ./dir-079/data.007
+7b806c0a3bd12973c5540a4a661ea698 ./dir-010/data.000
+7b91d10dc9a73501e2695fd03efca8a5 ./dir-064/data.004
+7ba6781b9f6a2102f6ee77e4bcd67e7d ./dir-102/data.007
+7bbc6a3d08c8aafe49f38286ea190736 ./dir-054/data.008
+7bc0ff8f58b050e3588a70ea5a899c2a ./dir-069/data.007
+7c2955cbe8d8635b43f067b782a8d22a ./dir-013/data.002
+7c96eeeb60a073929017e8830287f7ad ./dir-094/data.007
+7cedf898a8fe0dcd9e6e2fd98a74ab8b ./dir-082/data.005
+7d32425b7c104604f90ef5081a066d65 ./dir-015/data.002
+7dbc4d0b5e092ec07d71821d06cec150 ./dir-086/data.003
+7deabfdda68c09ca7212ea05659e9927 ./dir-017/data.004
+7e26cc30612356a343b39f0229ac3d46 ./dir-019/data.003
+7e7c2baf1cc7562b407fca1085c05d16 ./dir-074/data.004
+7e9b0ff66ef80bb5257831f7d04961b5 ./dir-020/data.008
+7ebe836d841b63662eead6beb412d4bc ./dir-107/data.000
+7f49e79851b7b45cd2d33175fa1b2969 ./dir-081/data.001
+7f667fbd3cc3f285932aaf92da189d1c ./dir-044/data.004
+7f84ad2226952dc3a2cad38c3ee2970c ./dir-007/data.001
+8045151192b49a8da4d2c8e6762ccba2 ./dir-107/data.010
+8048e0cba222cc165575eace3922e5b0 ./dir-039/data.000
+8049aa75ee4cb1b4c3bba59df67e47dd ./dir-068/data.002
+808aad824b9e2e465bca41efd1f52954 ./dir-100/data.005
+80940fad75c724a99076c376892083f5 ./dir-008/data.010
+809ad8f87b1d349538479eb8255fbd95 ./dir-087/data.010
+80b12631328b0da15def5ab7ff5923fa ./dir-094/data.002
+80b3adbeaf7752f4b28690bf34277a97 ./dir-082/data.009
+811f2222bf3e3261eddfa7c5b3d081b9 ./dir-046/data.009
+812008464e6378f41d6992b5ffcbeb84 ./dir-046/data.003
+8177492799584288b6d0912ddc3c5788 ./dir-010/data.002
+81fd13878406544d396fb0d907c9a41b ./dir-045/data.006
+8200bdc10480c0f32e2f83cd68515f7e ./dir-084/data.006
+820408ace3493250d98e8674b8187a91 ./dir-052/data.010
+821172e54e4afd62f705d226331c7fb5 ./dir-085/data.005
+826812a36105fcdf4d5500a6df0f08d2 ./dir-085/data.009
+82e160cb68fcd731ffd8c982eb669922 ./dir-034/data.000
+82f2bdcb4728e3ad2ad42688c776051f ./dir-006/data.008
+82fd0c7b72399922c915d56ff6966f09 ./dir-105/data.007
+83961ca3a7fdce7ec70696e2174653c7 ./dir-086/data.004
+83991d573bbd643493c94fe76fca77fc ./dir-006/data.007
+84455e279527682dc16597ccd64ba260 ./dir-103/data.010
+847ce91c4f37960bff5d34020b42ed52 ./dir-069/data.003
+847e94154fe39fcb40974901fd05b59d ./dir-057/data.009
+84a7ce38c6202fdb6b898df285446663 ./dir-106/data.008
+84aba2f561813a9bac0b4c06620152ae ./dir-051/data.001
+84c575bc39d6c0c91600a2dd9e453698 ./dir-078/data.002
+8512e02e44103f6767b334345dc73575 ./dir-049/data.003
+8520bdcd365dbbea56b48e181e892e6f ./dir-035/data.010
+85616c0da662f396d301cb1e6bdd7bd4 ./dir-013/data.004
+85ec836e67e6f2baeec01f665eb23e29 ./dir-095/data.003
+8603067c193e4a1c357801b381641dfb ./dir-092/data.003
+8611a66ab011033b3c906ba7b89e6c2d ./dir-037/data.000
+86378c2ea396585297f165531e6c7890 ./dir-025/data.000
+866430b5d3911c736376d7e660a81f00 ./dir-042/data.007
+86bc362ddc0cecdb48e4ef489efe9dd9 ./dir-005/data.008
+872a73bbce2c848a584e9382d62a7a8a ./dir-090/data.007
+874c93e05f4f32beff5051c4af86b8e4 ./dir-072/data.000
+876a2dd3d630d98143203693874f60d0 ./dir-091/data.000
+87a4a13a15b175b8b943cefdfe3e74e9 ./dir-091/data.008
+87dced824e8413e02cdbf539f8de061b ./dir-086/data.010
+87f5881d5c4a894085307aa10fdb105a ./dir-041/data.009
+87f8e92c8f1a1c8433398808abaf8165 ./dir-109/data.003
+881243716ba4e3c5ff3dd342c21c040b ./dir-082/data.003
+888da3d26656442aa1c19e2e477e59de ./dir-083/data.009
+88fa1bd87fa31d853e36bd503526227d ./dir-043/data.005
+89221d01c894262e97b15e7f5791e14d ./dir-014/data.001
+897ed3d984bf5f1368fabf49f3b0f12b ./dir-072/data.001
+89a503f5d1a1d9b94eadf14a3d7a7dd5 ./dir-045/data.000
+89e6081c35cdd3b86a836cff51971184 ./dir-065/data.009
+89f0acd75ca963beab0cabbffd628724 ./dir-091/data.001
+89f499b0da40af76802f0e03da77f6f6 ./dir-040/data.010
+8a010b14ef676d4304eef73b1f1f78e2 ./dir-004/data.007
+8a1283493ee60b494a58e6ace7452907 ./dir-089/data.009
+8a62a8742ed78023043d4eaec5b1e904 ./dir-098/data.002
+8a6b0c4f2c04e96d5315868996fcdda7 ./dir-108/data.004
+8a82ff49e710bd88450867a3f440b0da ./dir-075/data.009
+8a87b4e00c531cd577a39012397a0f87 ./dir-079/data.000
+8ab93bfdd9e62f3d6da0dbbc53ebffa1 ./dir-076/data.004
+8b09b7d62a3735681da36371657e14f3 ./dir-039/data.007
+8b93f04b52bd1fb0781f9d46ac7a290f ./dir-025/data.002
+8bd5650b0e7d4fbf6973214c2f507801 ./dir-047/data.002
+8bd5bfac106c68cffb3a098c4d157cf1 ./dir-063/data.010
+8c4ff8f780a98e39295f500278a1d887 ./dir-095/data.009
+8d1110f9accc804fc48bb2ee4af6bbf1 ./dir-110/data.009
+8d4261e80352070d2800f528932e37f4 ./dir-055/data.000
+8db08f66dee19a548b3e6eb3a1560980 ./dir-094/data.010
+8df75fe710ddf2316dd13f8065e4bf41 ./dir-087/data.001
+8df80279f2b2051d65bcf1f7a7dea7d9 ./dir-097/data.000
+8e58a42cf383173c0dcd6694402bc946 ./dir-014/data.003
+8e9933936e026159534f451cd0548d4b ./dir-029/data.001
+8e9e45218d17ae1aac57d24ba4417d9c ./dir-070/data.000
+8eab2b1d1ea2a5926ea5e276587543c4 ./dir-024/data.000
+8ee65e80da3449425d6c8cedc7be72fc ./dir-099/data.001
+8ef64875a9b9969869cb0f25a32fa0fd ./dir-039/data.004
+8f7b88afa2cfae0a337e1e330e9507aa ./dir-075/data.010
+8fd4eab768c4b5905e416725de423f55 ./dir-087/data.006
+8ffc927df86dd4c5e3966e9d0566e449 ./dir-014/data.000
+904a6d1b29b6b346d17fe5548b90cb6b ./dir-059/data.005
+904f618fe84960f4d495a2cbf494a179 ./dir-026/data.008
+90e643a0ead24f11449be2c13d739a53 ./dir-017/data.007
+91361fc94a17d6bd001d136355b85354 ./dir-024/data.008
+91850aa3831a821d375c416cf048d830 ./dir-012/data.010
+91f1499f9fc21e74879459600a825654 ./dir-103/data.000
+9207ec877c2fc0c887adbe81b97d7160 ./dir-023/data.009
+923fae1aad1f7f087f7d56be0a949abb ./dir-024/data.007
+924e608e16d18589a9932fc76ab7dad0 ./dir-090/data.005
+927968828d5c3065804466c0b654dfb4 ./dir-054/data.005
+9297c8e3209ad6c3e9eb803d5114753c ./dir-030/data.008
+92b3887179362557a9063adf548b2bd7 ./dir-081/data.010
+92f662f16c3768db5eeda3b60f4f0ade ./dir-022/data.003
+93b7c4d5373a364b8e3e26d077c980c7 ./dir-079/data.002
+93eb15b53e6879eba9e23c2f636e73a6 ./dir-061/data.000
+940bee1d330002cf234a338b63d07911 ./dir-068/data.001
+94172e924a7cdda629f202e115e86e96 ./dir-062/data.007
+94449220fca6a95893857a459eeeeec6 ./dir-000/data.005
+944a60c5820889ac6c204378ab8ec684 ./dir-065/data.010
+94611f97f30b3216ee306a97ee063285 ./dir-106/data.002
+95c4f44dbc662a1b80f231c03a1831a2 ./dir-031/data.005
+95f34bf560977aabf56b2374bfd801fc ./dir-031/data.000
+960b3433addbe419445506e4070e704c ./dir-031/data.004
+96fcc5df339caff14311a24a81134714 ./dir-042/data.006
+9706dd7a7ae979b858155dea8d54cb4e ./dir-033/data.008
+9873fcaaaf129d922cb29c10dd7665a1 ./dir-066/data.002
+989348123dcd08ee33c351e9156dd581 ./dir-005/data.009
+98af23ac4dc89133c749cb7968878859 ./dir-041/data.005
+98b72fa1526e20c16ab02546b656a925 ./dir-069/data.005
+99019e5feeacecd628b79b1eb7e161f7 ./dir-071/data.008
+9914beac14681493f7a7aa19a0f1bd8e ./dir-035/data.000
+993c2c1b64d4d9049df6d5d7cb56c4c7 ./dir-051/data.010
+999490bc33ec2a56ab230b6da8b1c1d1 ./dir-045/data.002
+99b70a3b5235ebfd1de6e096d54ab41f ./dir-083/data.008
+99b81b1024129991e19b010ee0f1299e ./dir-108/data.010
+9a0e0cb9a2f89fa8c888a7310b491aa3 ./dir-074/data.002
+9a2d63c1b47aa35a0d647d278d7b13b3 ./dir-020/data.005
+9a77b017cb714648bb338853717ad7e8 ./dir-059/data.006
+9af3052d79e03234d51790bca3f62abd ./dir-103/data.006
+9b1308d9a71f3d07df20c64ee9485215 ./dir-009/data.004
+9b243e7923207feeba44ef8967835213 ./dir-029/data.006
+9b25cc77ec3884b9b115f34a61aa6b1a ./dir-036/data.002
+9b4475d68d99b0d8b5b724b161ec3858 ./dir-079/data.003
+9b7bfa3dfb1223c084a732a460010ba6 ./dir-027/data.004
+9bd2393f4167104c602f462cff973c9f ./dir-058/data.005
+9c430e6db8f1530dfcab40de1ae320ee ./dir-058/data.000
+9c48ff0e9fc213cb2b483db230feb345 ./dir-022/data.009
+9c9a3eff549dee88a35c589ddd9d218b ./dir-018/data.001
+9ccd05ac96fe9192a6e3c9b864f51cc5 ./dir-043/data.002
+9cf33a7c891d6c7472267d57ca6cbc66 ./dir-046/data.002
+9d21fb30afaaef79aecb0da9815c347b ./dir-050/data.001
+9df2cd9f95fe997c8de62c5481d3c93f ./dir-034/data.003
+9e3b8430c7cb870803ec286c13718b02 ./dir-003/data.003
+9ea9c7d6b9fb3188ba0821136c228e7e ./dir-095/data.004
+9edf9a0560752008ceaaa4ae3ed5785e ./dir-071/data.005
+9f549656466f70f622c9df1c4ccc9521 ./dir-033/data.005
+9f80958140d65b5e0fb9a52167b1c422 ./dir-099/data.006
+9fa7f92a21ba500140aff17d8762a6aa ./dir-076/data.010
+9fd3b2804f593374def5a302a8b450c4 ./dir-074/data.005
+a0339de2c013f2d03f756a8144639897 ./dir-061/data.009
+a0a270ce379fd4d991d9ca728d63b36a ./dir-012/data.004
+a121b30fa0ad50b4e829a45879cc5edf ./dir-101/data.006
+a18b68c77ce90b9bdaca1ae55282337d ./dir-110/data.004
+a1e2cad8e97c82f3253442cff997bcf0 ./dir-080/data.000
+a238e250723b41101f07cfca17f11564 ./dir-045/data.008
+a246c5c6c1f823eb413af37d34b3bfff ./dir-077/data.008
+a29c24e21e6f607570f76e5625d3dc99 ./dir-032/data.003
+a341d8b152be8d341782db5ab1d7aabf ./dir-084/data.010
+a35ec86b31d73849147880eea4297fd0 ./dir-063/data.001
+a3891cd6855c346b07f6d1cd385c49b5 ./dir-094/data.004
+a3d9410efb0b1ff6600b3f627971fd16 ./dir-042/data.001
+a40587138ced04b20fb2527354606f2c ./dir-076/data.006
+a469810e4d1daa13f3e9b2e6f68b8d13 ./dir-004/data.006
+a4c13da90cbcf2f1624a4b2c2a9bb233 ./dir-109/data.008
+a4d4d492179eb2dca7ce30571c8ef3ba ./dir-007/data.004
+a52da0aa1a7acd8778fe6f40f0f8c0a9 ./dir-061/data.004
+a554b9068ef406ca372f9189304a82b7 ./dir-059/data.003
+a581e75f84f4ac6ad9e70e5b6bea53a4 ./dir-095/data.006
+a6055d0047d814a31f32e4185441d4a1 ./dir-007/data.007
+a60741e209b726fda4e969bf344f4aea ./dir-069/data.001
+a6395a9bcf53506cef1c6b62cc37f2d4 ./dir-003/data.000
+a65040955884d1c6e4d54ad9299a08e2 ./dir-062/data.001
+a65457550d23807b21c1afa93e9d21ef ./dir-035/data.009
+a66e2aef802f92385bf38b01ce8b0c80 ./dir-031/data.003
+a6952c83f6a406ed1baa2b1251bccfff ./dir-032/data.010
+a73aa26f62de99e97e691379ff64e838 ./dir-055/data.010
+a73ad6b847af80b66f4b37bf752e1097 ./dir-096/data.002
+a78d53e617d31d29d07a1bc8d463e456 ./dir-096/data.010
+a7903334dab2c9948a9460d94ffd27eb ./dir-082/data.002
+a7957cd1bfb38bb265c2d909bf4f0b21 ./dir-026/data.007
+a79df6152da4b78ece663f4b95d20cd3 ./dir-041/data.010
+a7aa7f0213d41db9b7a2d63c90f77772 ./dir-053/data.001
+a8111a4439244ed9de6e0c5944d7ffa1 ./dir-029/data.008
+a82b1e769c33fe701194d95fccf029c8 ./dir-010/data.004
+a8573ca8719910d3ea25839cf529d441 ./dir-091/data.009
+a85c6629da53d32a0ed0d3c8b0a26c72 ./dir-077/data.005
+a8a137df04b87ac736e158515ec71a42 ./dir-087/data.000
+a8a7ac87c426aa047b573b2dcbc4a0e6 ./dir-058/data.008
+a8c038a03f5bc2e6b52f02b8c5c52cb2 ./dir-054/data.009
+a8c4c1f924133ec0c8360901bcf6c199 ./dir-094/data.001
+a8e06c98144819d98e809492f08aa29c ./dir-035/data.001
+a93a49fd784c6ad90385ea022ecd2343 ./dir-045/data.010
+a95c46ac7047b8866dd9225ee4d648c6 ./dir-054/data.007
+a97f9c6c523f5479046377eca793ef53 ./dir-040/data.000
+a9a50ed2b165d548a1aca2e4b306d06b ./dir-048/data.006
+a9ba09df546930ba27663df0227b047a ./dir-002/data.003
+aa122bfd760ea4dc50aecf4f533c65aa ./dir-016/data.004
+aa3eb53c7a7a77690e996a5c0c1ccfae ./dir-024/data.010
+aa61a5d5f336b0b50e6b1d0796b890ae ./dir-088/data.009
+aa6fef63c3b2bbb9c17c9bd7308c5306 ./dir-036/data.004
+ab0f881f872563bd7846c3432ef7fce6 ./dir-003/data.010
+ab1ea1fe95b3af7db64aa8fa146760bc ./dir-093/data.008
+ab5acd6c59415e13dc791e3f300bccd2 ./dir-039/data.001
+abf175effd6c04dbedc04a31f009ef72 ./dir-038/data.004
+ac00bb6001e354a604063f1e31a8fe3c ./dir-028/data.000
+ac0eee49e473726deb56d47a823198d9 ./dir-086/data.009
+ac6e1f616fcab93bebea12c3dd1fefee ./dir-065/data.001
+ac8e596fdf6279e40fd0085bb0f34165 ./dir-084/data.005
+acc1ee7febd100ab23b6a479d3001825 ./dir-061/data.001
+acdbe2e496d6ae23c0f0dcfb0ea6faa8 ./dir-005/data.005
+ace9c8b5dd8e55dd13735c649c9d4af5 ./dir-099/data.008
+acf5cb2c7b1eb4390a60a1774bc4bab0 ./dir-090/data.009
+ad24114c9cb8f035ade2e862d9abafa8 ./dir-053/data.010
+ad320cdbfbfa5cf6c7b7a8c40a686193 ./dir-021/data.000
+ad5b2d548dbbfe6ab0e21437bb2e1f2d ./dir-019/data.001
+ade98adeb45ab19c7ce8d42782dc04a7 ./dir-087/data.005
+adefc5856d2a4595beeb1adcbd172221 ./dir-019/data.008
+ae81c953786cec82d0f1f9435b0d0c0d ./dir-056/data.009
+aebbeeb5e421cb8ad2e831a302742a6e ./dir-081/data.003
+aec4978b81441da9cba9008549fd58b4 ./dir-103/data.007
+aef628d7676ae21153a87e0f1ee0827d ./dir-053/data.000
+af9385b7625684c3d153854bfbc427fb ./dir-057/data.007
+af949e292c736dec64c29b35dbc94cf3 ./dir-104/data.008
+afb68dd90956c729c49211aa5cc974d3 ./dir-018/data.000
+afc5cceaed901e3baf26410e530b2112 ./dir-043/data.007
+afd05141be6f865a64e93908e05ab2e7 ./dir-070/data.004
+b050f6f0b55cafd91af8b5bfed9d7ef0 ./dir-106/data.010
+b06bca53b131304a89d152fa869e8d44 ./dir-006/data.006
+b07e07d9eb5b9765d5916910d3022a15 ./dir-041/data.003
+b099661d0dc7e777e94b88a768792aba ./dir-029/data.000
+b0f9fbc3889843756c2fbbdbc8e95c80 ./dir-052/data.007
+b141e0746d771b642b80789e2cee78b7 ./dir-055/data.005
+b15458b8d28b4ff277aa19d644c3f01e ./dir-078/data.004
+b19692bfcc887a0326ea0d9ff777b708 ./dir-082/data.008
+b1a0f67c22211b60eaa3ad043300ec39 ./dir-077/data.007
+b1cb07d7f4ab031522a1092cda009ea5 ./dir-024/data.009
+b228391e5b674f6e320f46c92a231a6d ./dir-013/data.001
+b231b16938922b62bc313c4dc791e89f ./dir-040/data.001
+b235e667fe06e2333d3d4f4cfeb11d8e ./dir-061/data.007
+b25e47b8e6084a771082a79d2964125d ./dir-042/data.008
+b2a5017e913a254b33c8fc51a0304745 ./dir-018/data.005
+b329dad6ad85c65a9222b8b261e86361 ./dir-008/data.008
+b33cd0e18b5a2384dc05a46f69b09059 ./dir-007/data.000
+b33f13624a7a7cfc50fef0456d74947a ./dir-097/data.005
+b367a0363b574a8455b841cada04accd ./dir-047/data.005
+b3c5ac9af4d7a04325182806453958ba ./dir-103/data.005
+b3dfc8b0fb7616287af6f7757207b6b8 ./dir-033/data.009
+b41d0afa4d57823e34d11e64bd6534a6 ./dir-087/data.009
+b445b7e624e7f1f7a5be6541a3a93a8a ./dir-043/data.009
+b46cf4a767a2d389800dda0374917427 ./dir-057/data.002
+b4c65166180c16e5437fbfe03af4b5d4 ./dir-015/data.004
+b4ccf8da14998cbe721c990de46c9edc ./dir-032/data.008
+b54b392b4cff92f8151d58cb92e688a0 ./dir-067/data.007
+b5934cbce1651c12cbb4e618e091f435 ./dir-102/data.001
+b5c1e57ffa0ceb0947170f610075f3b0 ./dir-043/data.001
+b5c8f4ca9d2cff5245b847e21c7df049 ./dir-050/data.002
+b61bf319c57da4eb4f121fd5c535760c ./dir-015/data.007
+b67fb5ee7b93061ade64929492590f5c ./dir-097/data.003
+b690077ebb25c2605ef0ee3372894cec ./dir-044/data.003
+b6c20ced9ffe0e91fbf7c4d71cc451bc ./dir-075/data.007
+b7538f880d91a07037290f98027ed306 ./dir-040/data.009
+b79f1bdb5bbb47e5d965e90137ddf26e ./dir-015/data.006
+b7b7cad8720d0f99fdbd7984caad8831 ./dir-061/data.006
+b7f56c9ebadcae8bd7b30e14bde0b5d2 ./dir-014/data.005
+b7f6d1118ee932c65f1e5a1931d6c8ff ./dir-014/data.009
+b84ac96cedb442fe235cffc8aa31199f ./dir-017/data.010
+b88c57aba26f8e1c085cfc7ae11888d0 ./dir-073/data.005
+b8bf171ed4f5f905cf8f7dab6a82a7d3 ./dir-021/data.002
+b8c336dd6ec7df5cb3f70ac79e169221 ./dir-108/data.005
+b8de847d8af8329206b516f825945439 ./dir-107/data.008
+b91053058f5cb868a65eb00ffc8c85db ./dir-018/data.007
+b983ec5e2696dec42e886e4aaf24c2dd ./dir-041/data.001
+ba18e6af480799cb61acf0e3984413d9 ./dir-023/data.001
+ba1c86b4c7519e9987fc62e04e14b93f ./dir-100/data.009
+ba3d3735db7501bb45a1bc37a1c90d91 ./dir-039/data.006
+ba5dff4458e438a37f7020a6997cb3eb ./dir-102/data.002
+ba71ea66885339efc504f581fa9d05fa ./dir-021/data.010
+bab7340230caffd9abe45a213cc7c94d ./dir-044/data.006
+bacf759099d3ce33cde104f0fd09404b ./dir-107/data.006
+bb3dc9d92e7c13191502f9ca2d9a2a46 ./dir-034/data.006
+bbf62db3e277893ae705b95df057c676 ./dir-046/data.001
+bc9a15ee53571be04ca1992754d407bc ./dir-037/data.001
+bcadd63e00fad4b7f09f32cf50c606f8 ./dir-078/data.010
+bce43f4bc32e3b431ce88e714ebde4e7 ./dir-078/data.007
+bd57ca2552a35196422eb254d0b6689b ./dir-010/data.007
+bd6d9661ef44ee94f3a576794ba2e972 ./dir-083/data.000
+bd85e8c8c0fd4ffd0a8abdd38675e4a7 ./dir-061/data.002
+bd8e9c392bc76c3d04ce23a376cf7941 ./dir-104/data.010
+bda8d53c45c521c5a7fcccf19e0fd4d2 ./dir-052/data.006
+bda946d7293089f487dbcf64564b7d79 ./dir-051/data.003
+bdd285092faf5a19c9a8b3fbd1162d64 ./dir-101/data.000
+bdf39b893567b3a6329a36dac48b516c ./dir-099/data.005
+bdf56ade34628d9a2e757b2bc6eb0e0c ./dir-013/data.007
+be507a830dc09b8c6d802d45647edb55 ./dir-104/data.002
+bf106a60eed1963cd3e58461c38cda87 ./dir-034/data.010
+bf21e493d536385c45df037b2e9cdb45 ./dir-089/data.000
+bfb0f4ba9a8588bec3cef4ede6a3bb57 ./dir-106/data.009
+bfda868277a6c6c0e25795ad73316074 ./dir-032/data.006
+bfdac2c988de39cec95a59f8a090636d ./dir-092/data.009
+c01bde4e9fd7733b6a915284ac12c4e8 ./dir-108/data.007
+c056ff72a9b187332dca300fbb81226e ./dir-026/data.003
+c0b2182de19c1695b71277d4fbfacc18 ./dir-052/data.001
+c0b94a538176aa6986cafa2e2fd8fe8c ./dir-045/data.004
+c0e16a96014a13995e537e8e39b0155e ./dir-052/data.002
+c1cf14e3812a8b9933911da679c49f8f ./dir-072/data.007
+c1ef0ec1fe3cc64d705d5499b6ee622e ./dir-110/data.001
+c2129120bc96703d28928d567bc5df58 ./dir-025/data.005
+c2429dbcf4929ef886b612147e8efbb3 ./dir-048/data.008
+c281f9a42b51ea7af93e5a88c1216120 ./dir-084/data.008
+c2c2abb9e870d144dde05ec6d7a979da ./dir-028/data.003
+c2f1846025293c2560ef44a2287ca948 ./dir-007/data.002
+c2f6da08e3e6c04fa04dbe47d9d91ead ./dir-085/data.001
+c35373fb9888c30272d2f574c0a9423b ./dir-079/data.010
+c372e35177aa3286cb5508590b191302 ./dir-051/data.005
+c3cc90dd33b6e5ed10081456f070c447 ./dir-085/data.002
+c47011f9488a8b8b5510aa96ef11fe57 ./dir-039/data.005
+c4958fb09eff0dd518b8a6997c6b71fc ./dir-017/data.009
+c53849249fad0defdf837bbddfa15489 ./dir-077/data.000
+c56775690b961bd0425dfd3d83dc4fa7 ./dir-066/data.000
+c5804311215078aacda89591c40bb4c2 ./dir-005/data.001
+c5b3227aa5484919dca0da947390419a ./dir-096/data.000
+c5caf8575038ceca91b140d9d0e3b24e ./dir-069/data.008
+c61fca3e05f9a8596ffed3f1512c8fd9 ./dir-024/data.001
+c672d7b16693c1848fb2331fd483ba5d ./dir-067/data.010
+c6c64e1a31b6593f2e35798cdfb9a67e ./dir-103/data.009
+c6e7741f3d499cb592e84ee501ae7c12 ./dir-056/data.000
+c734f450ed20e0e6ebe7e52ebeb40c27 ./dir-095/data.007
+c765acd0fddfdd8dd25c1e3b578ab8d2 ./dir-021/data.005
+c77831ccfd2a1c1842c475f2395e586c ./dir-004/data.010
+c78b32a24f2ffaa7a64a910871c7c2da ./dir-086/data.005
+c7aa9ec8f4a91d993ebc357f7c4d624c ./dir-012/data.001
+c7b6276dd9c53abc7824b172377fa566 ./dir-073/data.008
+c7bd7f81b81f3a3dffc9aa6d8903a5d4 ./dir-020/data.004
+c7d3088dbb470b1f8e659795e9ae001a ./dir-072/data.004
+c7db30e49010acd441ca071b159e8952 ./dir-093/data.005
+c87a70665e49298558c54e7b11150bdc ./dir-073/data.007
+c8c52776a8e9b3f43b55c112de4b3615 ./dir-055/data.001
+c90dd7ad53022e2ec777b401a2056794 ./dir-032/data.009
+c91679d9ccec60ec58fec6e5ecb71cde ./dir-001/data.004
+c9283d1db619943708a58a0d4e072490 ./dir-098/data.008
+c97100eaa0d5b50c2986ad2d7a4ab4c6 ./dir-105/data.002
+c9ca93c8b91e23c7d884985261c727bd ./dir-087/data.003
+c9f613e36059f6a2ebb21dcb5ac2e544 ./dir-098/data.005
+c9fb7d08b76286f726d349933453cdaa ./dir-102/data.000
+ca026e1fce7342eea8d59b5ef15ae1b9 ./dir-018/data.002
+ca1b624cfe0398448567862acb496721 ./dir-002/data.006
+ca5dd894a005c13702e966d04a58657a ./dir-074/data.007
+ca690ddf1d9488d3aae5de667b46e3c6 ./dir-071/data.009
+cabb2940fafe7ddf2643830f7542cc4f ./dir-070/data.008
+cacc98cea7525be670fba062e921386f ./dir-027/data.009
+caf930731a2124520be71f7bdbf5147f ./dir-030/data.005
+cb30fa3d22c32ff5b466a216d7e4174c ./dir-041/data.007
+cb353cc900a10c0020fcc40d20fb772c ./dir-050/data.003
+cba8191118e1823bb38f80321b98d7a5 ./dir-032/data.005
+cbf68202741c92a6a1a1345ba40dbc1c ./dir-019/data.004
+cbf9667ac181f5100cf3d7d179f07c26 ./dir-014/data.010
+cbfe24d7f1aef20746adda09edfa0b12 ./dir-072/data.008
+cc2567a2350fee4c5187a00bc0615d5e ./dir-054/data.004
+cc798615c0b02d53f6827240ee654f98 ./dir-064/data.010
+cc83d5b78aa34ff3d82957c7d69ee16a ./dir-013/data.003
+cca5c0bdd6d0eb18b7cdec2bcbb59754 ./dir-076/data.009
+cd6be4b1b25de9bff66ad8191eac7d4c ./dir-042/data.004
+cdcd5240e78c13357281153c4a41395e ./dir-087/data.004
+ce0dec612db80a92a176ce190b19a754 ./dir-070/data.001
+ce3392cd4d81de001fb397ba1655c0c8 ./dir-010/data.008
+ce58a0e50d16d75c45ce9447bc868b45 ./dir-018/data.009
+cf5fb8cbfe7235521fd7878d964badaf ./dir-022/data.004
+cfbe0f69b35baa9133b6355cd2bd6d08 ./dir-094/data.008
+cfc01799332549522a823077147adff0 ./dir-056/data.003
+cfde64c362835a72c8cedfe6477bda56 ./dir-079/data.008
+cff6f29c1536291d54498fb539c6681f ./dir-002/data.002
+d119223e0da07f005012bf6fef415b5c ./dir-082/data.007
+d16dbb40ad04cfe09048dfa56977ca3c ./dir-044/data.010
+d1dbfddf209f6a070bcf48353abdbd8b ./dir-040/data.003
+d1e5806bdc06ae2231b6f9b1a3fa1f0c ./dir-001/data.001
+d2229c5a61c0ccf7b139714484231a84 ./dir-001/data.009
+d244204b0e63d7c33b2dd3e5d2237748 ./dir-036/data.005
+d253d09ebe6df96b84565b3bf26e8bbc ./dir-030/data.002
+d2703dfcb228a9885d58eb6bf8c4318a ./dir-088/data.002
+d27c78713f252e2393ea942abcf4a4ac ./dir-048/data.007
+d2b6e1db7ab88233015e7d8fa5a6bb81 ./dir-021/data.009
+d2be814d2ae5f33723cc8794614483fb ./dir-008/data.005
+d2bf7c23465b9455a3ca27b50cc123ff ./dir-073/data.002
+d2c1b2b6ca16f4e4ff9750926aefacd4 ./dir-030/data.010
+d34362c0b86a934e848478067760c863 ./dir-021/data.008
+d34799931eeefa914727e0822c667fc5 ./dir-031/data.008
+d35a62ef99570c5ef5bb6291bbb36cc9 ./dir-101/data.003
+d39fdbbfcd1e15fda146977224126f8b ./dir-011/data.009
+d3eb0f4bb3b04b412907e453c82bb89f ./dir-035/data.007
+d40f0f333fc2f02a4266d363897f3334 ./dir-045/data.009
+d44fff6de24382f14b0426101e737354 ./dir-110/data.008
+d460686d5f374017452fe62e3f95b4d4 ./dir-105/data.008
+d461cc84eb03cc6db78e0720648d15e4 ./dir-061/data.003
+d463379d1811241dc56a4ccc9bf68dfc ./dir-076/data.005
+d46c8c7b7c0b54ebd046c6209d1f8afa ./dir-054/data.001
+d4d0fae354af6cdcc3202c9aa8ff2e9a ./dir-019/data.002
+d4f3040cabb5fbce85528e25f20cdeab ./dir-061/data.008
+d51be6c824d053d4e75720d6c8f515ff ./dir-001/data.002
+d540ef78ac829556f9933dd6579db7ae ./dir-091/data.003
+d54f188240ba83df0932dffbb36007fb ./dir-021/data.007
+d5b52c7c054a27ba342bc7e53bfe131e ./dir-081/data.009
+d5c7cd835ff19cb7c70e17d3134263bf ./dir-074/data.006
+d5fb3204d70d906a74b760999e5b266c ./dir-042/data.003
+d67493efc7f10910daab14016546a47b ./dir-059/data.000
+d68ed1553d2660f509612d8ddd8bcd62 ./dir-056/data.004
+d6f097c83e62877b98951bead0282dff ./dir-040/data.005
+d6ffc513ced7b0c1005dd11f10924b88 ./dir-055/data.008
+d7a69319272c26b24631cc0abb1521eb ./dir-053/data.005
+d7c2447c79f584c5a4b2ec525c586129 ./dir-031/data.002
+d7e552057b420dabf022aa6b8267946a ./dir-030/data.006
+d87260bd7bf4aa6ec556d77bf958a36d ./dir-060/data.001
+d87f53fa0fad9af8218a27fa1b69c070 ./dir-080/data.002
+d8f379df1febe77c86990017745edebc ./dir-034/data.005
+d945d5a070b995162293f1c77ff15527 ./dir-018/data.010
+d9ed49e99f63581ccafe915b76f3f96d ./dir-102/data.006
+d9fca3922fa0e01fd527f8db69589425 ./dir-088/data.001
+da09dfe4cb9bd06c37473254e857139c ./dir-076/data.003
+da18c9351bceb7f342718d50fb062544 ./dir-006/data.003
+da247fc6c9e1f840d7ef58e86bbed220 ./dir-019/data.000
+da2e4fd85a49ba6b0c7659c7abf99ad1 ./dir-089/data.005
+da57bb441160e6555b30c75915288bf5 ./dir-099/data.004
+da9218453d4c99672e702f0fd7b9c0c0 ./dir-014/data.004
+dab2bec775140e6203daa6ec122f049e ./dir-071/data.003
+dab99d3d9dfc9d5c9f0d525716153562 ./dir-075/data.003
+dadc6c41f41b3ff28706df675eaa96b5 ./dir-004/data.000
+daff2d6af09718e4825b22b98f00b7e9 ./dir-003/data.002
+daff63e9d1ae3734d069d0dc0305be72 ./dir-109/data.006
+db210b89b1004f031eadd847e5a0645b ./dir-043/data.008
+db2b0158388ee251970c6454c8cd9a97 ./dir-083/data.002
+db49a13bd7e2320210df3a006f7e9f6f ./dir-043/data.000
+dbdba9607f2d777e10ddc67f50950e2e ./dir-057/data.005
+dc09e8a41db214d248148efbf9605f95 ./dir-081/data.004
+dc0a7007675041b30317afaf44ee708e ./dir-064/data.001
+dc153ae714532e2d34f1b7ea044b6ff9 ./dir-096/data.008
+dc1f4da785733bbb2897d94ce78bc7bf ./dir-071/data.004
+dc2f22dae3a3d34a18929506cfc6f277 ./dir-029/data.003
+dc40f9a57dfacd21d602218898ab93e7 ./dir-058/data.004
+dc98758c6a9b39a6a3deae298d579c4e ./dir-042/data.009
+dccd562a4a98653a3fe96d77741ddbeb ./dir-104/data.000
+dce7e7c23b5cba5b96b11d5300e00afe ./dir-056/data.010
+dd006052a28552fa069abf5043462570 ./dir-049/data.009
+dd079bd050dd7b83ff6a8e2fb5773ed4 ./dir-049/data.010
+dd898a6ab8739c0cf16dd72034bc7668 ./dir-046/data.007
+dd8c233b992da6babbcbc9ce7879051b ./dir-097/data.007
+dd981304897bc330f690d2040aa1e53f ./dir-047/data.009
+ddcd7ea13cae57498088c1994619b3be ./dir-020/data.001
+de7fe274e770b4dabdeb867fa92a12bc ./dir-109/data.002
+de8a70eee3e508a723d3b5d2a9901316 ./dir-055/data.004
+deb960b1268705a472e3b46181ccebfe ./dir-042/data.010
+debf081b6824f07c5f6c22db6bc152a6 ./dir-086/data.002
+e003aaecb77df91f04990cd45eff2dbc ./dir-018/data.006
+e0596ce1f833197052bf72fa4e45ec28 ./dir-074/data.003
+e06e45e369dc2fa98b18c35268ef81c7 ./dir-037/data.010
+e0c2f2d375b3fa8c0c47a029bb18cc39 ./dir-009/data.000
+e0d48247fcfaa83930555edf8a6647df ./dir-041/data.004
+e0fe16303d99ec21e6dd13ac27d2b5fa ./dir-083/data.004
+e13007540bfd0bccdceda2f824ae3236 ./dir-092/data.010
+e131a83d7b706104b800bcba7e89a9f0 ./dir-009/data.008
+e1697901fb44ebccf438fb056c1cbb03 ./dir-007/data.003
+e1be15cad90b65114aff80e0f922e988 ./dir-034/data.008
+e2e34027afd431af2b5ef0bc815a1623 ./dir-100/data.002
+e32174de64d871b47b38ab874aa50a39 ./dir-102/data.009
+e33dcc8d7ffd1e0fccfb71c6715f6e56 ./dir-049/data.007
+e382a45df3024ad97563f9c13a195181 ./dir-105/data.005
+e3a104190d1c461ffdac462d66dee7ad ./dir-090/data.010
+e45c6752ab067602a7e9a71b9f9105e3 ./dir-045/data.003
+e492d468364872187d50021aa490c367 ./dir-092/data.007
+e49ff5b90e7e7704d5c829c41a859c86 ./dir-047/data.001
+e4a0756e3e92ac6b266c4b26dd43d27e ./dir-064/data.008
+e4a0dbb8ed00208e9a4d293d1c259989 ./dir-105/data.000
+e4e5e5b2642d322e1b9539bb021e1228 ./dir-064/data.009
+e4e9447cdd3ee6f4a753a9fa3bc1823f ./dir-037/data.004
+e5c21a2614775ebb798752e4dbba7f52 ./dir-107/data.001
+e5d87d25b8fdce6d6f30b52230761884 ./dir-070/data.009
+e5f2783896a89baeef0c5f68d0f47382 ./dir-110/data.007
+e6b75284cc6be5b80c57dc613373eec5 ./dir-086/data.000
+e6eecf8a727f4ee6852e2f62fb941b70 ./dir-039/data.002
+e7068f5918b4ce52344808f68ad0a085 ./dir-002/data.004
+e76d156c81829e84fe6688266fb52e37 ./dir-048/data.004
+e776126c38f075d4d2d3ea5e81e36e28 ./dir-094/data.005
+e783cb0562a591793f817a659e708470 ./dir-070/data.003
+e7bd906fce62b116f9088b58737b32c9 ./dir-091/data.006
+e7c710fe94754f90fb64f9e7e89351fc ./dir-069/data.010
+e81eff29b7729656cf2e06ec4a604185 ./dir-048/data.010
+e82627067c5c15970580acf5939be216 ./dir-030/data.000
+e845537c1977f66004c079beb9af5d74 ./dir-067/data.002
+e8649a3c6600e3624f6f2c1ab36bd5fc ./dir-036/data.009
+e88289300b2f2dbcca4c69b96abb31e3 ./dir-060/data.006
+e92f7f1b0a07ac60b05786d5725967ae ./dir-005/data.003
+e9d61885e0bbe1341a7789ecba127ab3 ./dir-020/data.003
+e9d9fb125da6f7296c0ee69235fdc55d ./dir-040/data.006
+e9ebdcc7fc5ce3ec40ec2c22b56a0c5e ./dir-057/data.003
+e9eeeaccd7c260f610226d199dcc1133 ./dir-001/data.003
+e9fe2dd437c71180558c00664d96936e ./dir-057/data.000
+ea2d20b5948278f55f8700bb7cfb525e ./dir-094/data.000
+ea3a40a6ed7c5c7badcddc829240451f ./dir-000/data.008
+ea60b89846ffe9098f376100a15fd623 ./dir-019/data.006
+eab0df7e354bdd20324ff75aa354c67e ./dir-036/data.010
+eac4ad9e6789702729f14d480254df13 ./dir-078/data.006
+eae751b2f5890a8a2e66842500875489 ./dir-064/data.007
+eb213def8582bf9c391032ab810224a4 ./dir-030/data.004
+eb2239dc1c3284a743ec2480b66a440a ./dir-095/data.005
+eb39335474a5f114496e45855d65965b ./dir-030/data.009
+eb49c652a3a9b67f48bed5f453c513fb ./dir-091/data.005
+eb8ab8adf1fd8e2e81eceaa2e405becf ./dir-015/data.001
+ec111bdd9562902ed047cddc4e291e0f ./dir-011/data.002
+ed6738198877ba672174a23b39aaf0ca ./dir-050/data.008
+ed87c44257e44baa0486784489fe1eb7 ./dir-093/data.003
+edae2f977e8885aabcafea140e4ea445 ./dir-103/data.002
+ee03c3c5c80c543bf52029381455e0da ./dir-093/data.010
+ee90d8d8a67c5f06de9a35a505bd4d82 ./dir-005/data.010
+ee98acc4ba7f594a49b86364edcf4312 ./dir-047/data.006
+ef45a01355157d5c4a8ac9783d30b000 ./dir-099/data.010
+efe6dab69eb3503886b623ab24ae32e0 ./dir-033/data.006
+f0230c53db8fb9ff1a66eec12b28d3c0 ./dir-029/data.010
+f038a202cce579e29ed75ef2f8ec9205 ./dir-077/data.009
+f067ef339dbfa373842d6beb5d4c5839 ./dir-006/data.000
+f06af3887a662caed220e9fe98c12f6f ./dir-007/data.008
+f09311e30b55f3199d6b5891cf717bb5 ./dir-080/data.004
+f0b69d2184753e5341681ddf9bc0df32 ./dir-037/data.008
+f0db3f70a37f660ce31bfe0600b80b49 ./dir-087/data.002
+f127bead521c0da62f4a607ebd6627b6 ./dir-057/data.006
+f18ba5b02bbf03abe12fca65564dcb95 ./dir-108/data.008
+f1bf04664350afb4ce5a5f0dd245d2c5 ./dir-038/data.001
+f1d367dea7bb98a9bddd4f5cc7a9798e ./dir-065/data.004
+f1e646f46c36449c3412aed4cb164968 ./dir-110/data.006
+f214ca488221c804a5557a9b809afd65 ./dir-045/data.007
+f237d0598589a542815fbf5ef59751cc ./dir-054/data.010
+f2577aa82791ecbf27b9085a22c23ff9 ./dir-059/data.002
+f2616b2ea0b3ce8565e568c0ed8efacc ./dir-079/data.009
+f2cc443362b156a2228f4a69fe4102bf ./dir-084/data.003
+f2df3b5bbcb225df895cdac384145d84 ./dir-020/data.000
+f329736caf4ce7d80213defa11f3c65a ./dir-025/data.003
+f34fd4ff678b218e8780724d3bd2a420 ./dir-029/data.004
+f39243bebe1bbc71e85de2b3d8d7122a ./dir-107/data.003
+f49b053513974d593dcc2c461c96e2a0 ./dir-028/data.010
+f4c0d20fecc04dbf7a204e105f836893 ./dir-101/data.005
+f4cfb0beced90e2adf96d3f2fa2ba465 ./dir-034/data.007
+f4d745c385f037aafef08310fb194a2c ./dir-066/data.004
+f5084ae9ded9833ee8c63281f5ed1641 ./dir-058/data.002
+f519dd2fcfc3047101faf90bcf18654d ./dir-049/data.005
+f5258302f6ab8a38a7b6b05b10d35097 ./dir-055/data.009
+f5323d4d915d67f9d777d52374cd27c0 ./dir-016/data.007
+f5e7738a9f2c3d02929d009724336023 ./dir-067/data.005
+f62d0c3b799b25730fb6a43d0014f220 ./dir-022/data.010
+f6abfdb63fb4c981814704fedd4b18d0 ./dir-058/data.010
+f6f7d42879db7621ad209d45bd9d6a0a ./dir-013/data.005
+f70fa856aa1740b7ed824a5439665b0f ./dir-062/data.010
+f72df01f8f290bc6e05f972db7a01f90 ./dir-048/data.002
+f73a183eab3ffe4070277b9e7f23da56 ./dir-037/data.002
+f7f7b2f1b136a01d8a9b3f1f6c3f9e88 ./dir-025/data.008
+f81c088c701a88d9b396e30f98776064 ./dir-033/data.010
+f897e7735ef1808a5a7bf6129cf0e0c9 ./dir-092/data.005
+f8a696717bb5a5adecf00ddd097d8d0c ./dir-091/data.007
+f8e2186f04d4cb6801acc2c0a68d810a ./dir-049/data.001
+f8f774997c9388bb7a6d593e6224e998 ./dir-104/data.007
+f90e54c08be11e4aacdf3c02dff8ee1b ./dir-083/data.003
+f9111bb9930d80cea7b7db64f092d597 ./dir-068/data.008
+f969de462dd1b58a64bc75adbe73016d ./dir-045/data.001
+f984f85a77d57c6bd3b366771fd98ea4 ./dir-063/data.005
+f9a468508fd7e6db5a77e3101daf22b3 ./dir-100/data.008
+f9c8e6c3a0c4a938ceb033f151e541ea ./dir-077/data.003
+f9f909982ea33e776b985ee5aca5378a ./dir-052/data.005
+fa411f1f9f559b4ee3dd109c2e59b106 ./dir-081/data.006
+faa2bbf820f78b39454c4feebe08a3c5 ./dir-004/data.001
+fab4fefd2d8eb77c4f36c89959ae7980 ./dir-073/data.003
+fb2388d03c2723f15728bda9c1dc2762 ./dir-024/data.006
+fb524e3bb758f32e7d34e538a5e40560 ./dir-019/data.010
+fb539fb081f4a95ac5b5b5e11343e2b7 ./dir-052/data.008
+fb7dd48f35c128212b78551cceda244c ./dir-038/data.005
+fb8aa16acb9f7292384e265585f4dd37 ./dir-055/data.003
+fbd1db4da87c1ed8082d9cf94fc424aa ./dir-027/data.003
+fc04e84bb6c640f890854fc5775b9d8a ./dir-034/data.004
+fc21a043990d03703003a506b0662821 ./dir-005/data.000
+fc2a45f10e52e18918d25d640f751457 ./dir-099/data.007
+fc2e476a6d1b7ce71b51bd43816891a3 ./dir-096/data.007
+fc304616f24322e26a4666c0e7181e7e ./dir-006/data.002
+fc906d13df56dfc5580af823ca1af610 ./dir-077/data.006
+fc97b066c0af8f2fa40f2bc91cae3b56 ./dir-063/data.009
+fc9bd58f8f126a8406987360b64a91fe ./dir-004/data.008
+fcbaf30100050cc1bb990e98d30605b9 ./dir-006/data.010
+fcd7a6b7924260b997ae603eadfae59f ./dir-090/data.000
+fd1decb314835cbb95d4aa6e7bdf3359 ./dir-075/data.000
+fd38d0ddd60429b3c7071867a8fcfbc0 ./dir-047/data.008
+fd3e4c487cae1c68f05ea2dc81cba74c ./dir-055/data.007
+fd63004ae886ce8e520756c6eff04835 ./dir-009/data.003
+fe086b79a2c29f13437c1346a8cb53f4 ./dir-009/data.005
+fe3505df1642e9d306269e2e07ab1089 ./dir-064/data.000
+fe4f310b776e309503f523b8a26d3ba8 ./dir-085/data.010
+fe68ec6607c15f0ceabada101b382b0e ./dir-069/data.004
+fe7751a5487172303de648672602c28a ./dir-076/data.002
+feb8b69e6224a7ea72e881e3f4a45b32 ./dir-028/data.009
+fed540a11f00f1f80470be7b491fc45c ./dir-108/data.002
+fed5e00dc94ed751061194eccf2c77e2 ./dir-050/data.007
+ff10c7b37d705bc48a1fdee62ea7661f ./dir-079/data.006
+ff13d49326ff8759119e78959de628e9 ./dir-048/data.003
+ff216f0f2e540e9057874b0cb4fdcdb1 ./dir-100/data.007
+ff92bf04634e26a2980ffb6ad47f9c05 ./dir-026/data.006
+ffe078de3583025c4780c8f4305772c3 ./dir-085/data.004
+fff6015c3b8f791f4027791ac0b5f593 ./dir-063/data.004
+
+umount the image
diff --git a/tests/expected/cramfs/mkfs-endianness b/tests/expected/cramfs/mkfs-endianness
new file mode 100644
index 0000000..ef935a7
--- /dev/null
+++ b/tests/expected/cramfs/mkfs-endianness
@@ -0,0 +1,4 @@
+create little endian
+4666f0d2b661f9f3962877edabadb210
+create big endian
+bc0b7bbef02765d32e07faa735d2e0c6
diff --git a/tests/expected/eject/umount b/tests/expected/eject/umount
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/expected/eject/umount
diff --git a/tests/expected/eject/umount-by-disk b/tests/expected/eject/umount-by-disk
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/eject/umount-by-disk
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/eject/umount-by-disk-mounted b/tests/expected/eject/umount-by-disk-mounted
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/eject/umount-by-disk-mounted
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/eject/umount-by-disk-mounted-partition b/tests/expected/eject/umount-by-disk-mounted-partition
new file mode 100644
index 0000000..2a99ba0
--- /dev/null
+++ b/tests/expected/eject/umount-by-disk-mounted-partition
@@ -0,0 +1,2 @@
+Create partitions
+Success
diff --git a/tests/expected/eject/umount-by-partition b/tests/expected/eject/umount-by-partition
new file mode 100644
index 0000000..2a99ba0
--- /dev/null
+++ b/tests/expected/eject/umount-by-partition
@@ -0,0 +1,2 @@
+Create partitions
+Success
diff --git a/tests/expected/eject/umount-by-partition-mounted b/tests/expected/eject/umount-by-partition-mounted
new file mode 100644
index 0000000..2a99ba0
--- /dev/null
+++ b/tests/expected/eject/umount-by-partition-mounted
@@ -0,0 +1,2 @@
+Create partitions
+Success
diff --git a/tests/expected/fdisk/align-512-4K b/tests/expected/fdisk/align-512-4K
new file mode 100644
index 0000000..293f4ae
--- /dev/null
+++ b/tests/expected/fdisk/align-512-4K
@@ -0,0 +1,83 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+The device presents a logical sector size that is smaller than
+the physical sector size. Aligning to a physical sector (or optimal
+I/O) size boundary is recommended, or performance may be impacted.
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-102399, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-102399, default 102399): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-102399, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-102399, default 102399): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (2 primary, 0 extended, 2 free)
+ e extended
+Select (default p): Partition number (1-4, default 3): First sector (43008-102399, default 43008): Using default value 43008
+Last sector, +sectors or +size{K,M,G} (43008-102399, default 102399): Partition 3 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (3 primary, 0 extended, 1 free)
+ e extended
+Select (default e): Selected partition 4
+First sector (63488-102399, default 63488): Using default value 63488
+Last sector, +sectors or +size{K,M,G} (63488-102399, default 102399): Using default value 102399
+Partition 4 of type Extended and of size 19 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 5
+First sector (65536-102399, default 65536): Using default value 65536
+Last sector, +sectors or +size{K,M,G} (65536-102399, default 102399): Partition 5 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 6
+First sector (77824-102399, default 77824): Using default value 77824
+Last sector, +sectors or +size{K,M,G} (77824-102399, default 102399): Partition 6 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 7
+First sector (90112-102399, default 90112): Using default value 90112
+Last sector, +sectors or +size{K,M,G} (90112-102399, default 102399): Using default value 102399
+Partition 7 of type Linux and of size 6 MiB is set
+
+Command (m for help):
+Disk /dev/...: 52 MB, 52428800 bytes, 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 4096 bytes
+I/O size (minimum/optimal): 4096 bytes / 32768 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/...1 2048 22527 10240 83 Linux
+/dev/...2 22528 43007 10240 83 Linux
+/dev/...3 43008 63487 10240 83 Linux
+/dev/...4 63488 102399 19456 5 Extended
+/dev/...5 65536 75775 5120 83 Linux
+/dev/...6 77824 88063 5120 83 Linux
+/dev/...7 90112 102399 6144 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets:
+0
+0
+0
+0
+0
+0
+0
diff --git a/tests/expected/fdisk/align-512-4K-63 b/tests/expected/fdisk/align-512-4K-63
new file mode 100644
index 0000000..5369ec5
--- /dev/null
+++ b/tests/expected/fdisk/align-512-4K-63
@@ -0,0 +1,84 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+The device presents a logical sector size that is smaller than
+the physical sector size. Aligning to a physical sector (or optimal
+I/O) size boundary is recommended, or performance may be impacted.
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (7-102399, default 7): Using default value 7
+Last sector, +sectors or +size{K,M,G} (7-102399, default 102399): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (20487-102399, default 20487): Using default value 20487
+Last sector, +sectors or +size{K,M,G} (20487-102399, default 102399): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (2 primary, 0 extended, 2 free)
+ e extended
+Select (default p): Partition number (1-4, default 3): First sector (40967-102399, default 40967): Using default value 40967
+Last sector, +sectors or +size{K,M,G} (40967-102399, default 102399): Partition 3 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (3 primary, 0 extended, 1 free)
+ e extended
+Select (default e): Selected partition 4
+First sector (61447-102399, default 61447): Using default value 61447
+Last sector, +sectors or +size{K,M,G} (61447-102399, default 102399): Using default value 102399
+Partition 4 of type Extended and of size 20 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 5
+First sector (61454-102399, default 63487): Using default value 63487
+Last sector, +sectors or +size{K,M,G} (63487-102399, default 102399): Partition 5 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 6
+First sector (61454-102399, default 75775): Using default value 75775
+Last sector, +sectors or +size{K,M,G} (75775-102399, default 102399): Partition 6 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 7
+First sector (61454-102399, default 88063): Using default value 88063
+Last sector, +sectors or +size{K,M,G} (88063-102399, default 102399): Using default value 102399
+Partition 7 of type Linux and of size 7 MiB is set
+
+Command (m for help):
+Disk /dev/...: 52 MB, 52428800 bytes, 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 4096 bytes
+I/O size (minimum/optimal): 4096 bytes / 32768 bytes
+Alignment offset: 3584 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/...1 7 20486 10240 83 Linux
+/dev/...2 20487 40966 10240 83 Linux
+/dev/...3 40967 61446 10240 83 Linux
+/dev/...4 61447 102399 20476+ 5 Extended
+/dev/...5 63487 73726 5120 83 Linux
+/dev/...6 75775 86014 5120 83 Linux
+/dev/...7 88063 102399 7168+ 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets:
+0
+0
+0
+0
+0
+0
+0
diff --git a/tests/expected/fdisk/align-512-4K-md b/tests/expected/fdisk/align-512-4K-md
new file mode 100644
index 0000000..7b7e4bf
--- /dev/null
+++ b/tests/expected/fdisk/align-512-4K-md
@@ -0,0 +1,87 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+The device presents a logical sector size that is smaller than
+the physical sector size. Aligning to a physical sector (or optimal
+I/O) size boundary is recommended, or performance may be impacted.
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-102399, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-102399, default 102399): Partition 1 of type Linux and of size 20 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (43008-102399, default 43008): Using default value 43008
+Last sector, +sectors or +size{K,M,G} (43008-102399, default 102399): Using default value 102399
+Partition 2 of type Linux and of size 29 MiB is set
+
+Command (m for help):
+Disk /dev/...: 52 MB, 52428800 bytes, 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 4096 bytes
+I/O size (minimum/optimal): 4096 bytes / 32768 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/...1 2048 43007 20480 83 Linux
+/dev/...2 43008 102399 29696 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets:
+0
+0
+Create partitions (MD)
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+The device presents a logical sector size that is smaller than
+the physical sector size. Aligning to a physical sector (or optimal
+I/O) size boundary is recommended, or performance may be impacted.
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-100095, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-100095, default 100095): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-100095, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-100095, default 100095): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help):
+Disk /dev/md8: 51 MB, 51249152 bytes, 100096 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 4096 bytes
+I/O size (minimum/optimal): 65536 bytes / 131072 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/md8p1 2048 22527 10240 83 Linux
+/dev/md8p2 22528 43007 10240 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets (MD):
+0
+0
diff --git a/tests/expected/fdisk/align-512-4K-topology b/tests/expected/fdisk/align-512-4K-topology
new file mode 100644
index 0000000..88f5f37
--- /dev/null
+++ b/tests/expected/fdisk/align-512-4K-topology
@@ -0,0 +1,78 @@
+Create partitions
+Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
+Building a new DOS disklabel with disk identifier 0x817cb84a.
+Changes will remain in memory only, until you decide to write them.
+After that, of course, the previous content won't be recoverable.
+
+Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
+
+The device presents a logical sector size that is smaller than
+the physical sector size. Aligning to a physical sector (or optimal
+I/O) size boundary is recommended, or performance may be impacted.
+
+WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
+ switch off the mode (command 'c') and change display units to
+ sectors (command 'u').
+
+Command (m for help): DOS Compatibility flag is not set
+
+Command (m for help): Changing display/entry units to sectors
+
+Command (m for help): Command action
+ e extended
+ p primary partition (1-4)
+Partition number (1-4): First sector (64-102399, default 64): Using default value 64
+Last sector, +sectors or +size{K,M,G} (64-102399, default 102399):
+Command (m for help): Command action
+ e extended
+ p primary partition (1-4)
+Partition number (1-4): First sector (20544-102399, default 20544): Using default value 20544
+Last sector, +sectors or +size{K,M,G} (20544-102399, default 102399):
+Command (m for help): Command action
+ e extended
+ p primary partition (1-4)
+Partition number (1-4): First sector (41024-102399, default 41024): Using default value 41024
+Last sector, +sectors or +size{K,M,G} (41024-102399, default 102399):
+Command (m for help): Command action
+ e extended
+ p primary partition (1-4)
+Selected partition 4
+First sector (61504-102399, default 61504): Using default value 61504
+Last sector, +sectors or +size{K,M,G} (61504-102399, default 102399): Using default value 102399
+
+Command (m for help): First sector (61568-102399, default 61568): Using default value 61568
+Last sector, +sectors or +size{K,M,G} (61568-102399, default 102399):
+Command (m for help): First sector (71872-102399, default 71872): Using default value 71872
+Last sector, +sectors or +size{K,M,G} (71872-102399, default 102399):
+Command (m for help): First sector (82176-102399, default 82176): Using default value 82176
+Last sector, +sectors or +size{K,M,G} (82176-102399, default 102399): Using default value 102399
+
+Command (m for help):
+Disk /dev/sdb: 52 MB, 52428800 bytes
+32 heads, 32 sectors/track, 100 cylinders, total 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 4096 bytes
+I/O size (minimum/optimal): 4096 bytes / 32768 bytes
+Disk identifier: 0x817cb84a
+
+ Device Boot Start End Blocks Id System
+/dev/sdb1 64 20543 10240 83 Linux
+/dev/sdb2 20544 41023 10240 83 Linux
+/dev/sdb3 41024 61503 10240 83 Linux
+/dev/sdb4 61504 102399 20448 5 Extended
+/dev/sdb5 61568 71807 5120 83 Linux
+/dev/sdb6 71872 82111 5120 83 Linux
+/dev/sdb7 82176 102399 10112 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets:
+0
+0
+0
+0
+0
+0
+0
diff --git a/tests/expected/fdisk/align-512-512 b/tests/expected/fdisk/align-512-512
new file mode 100644
index 0000000..37cfa71
--- /dev/null
+++ b/tests/expected/fdisk/align-512-512
@@ -0,0 +1,68 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-102399, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-102399, default 102399): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-102399, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-102399, default 102399): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (2 primary, 0 extended, 2 free)
+ e extended
+Select (default p): Partition number (1-4, default 3): First sector (43008-102399, default 43008): Using default value 43008
+Last sector, +sectors or +size{K,M,G} (43008-102399, default 102399): Partition 3 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (3 primary, 0 extended, 1 free)
+ e extended
+Select (default e): Selected partition 4
+First sector (63488-102399, default 63488): Using default value 63488
+Last sector, +sectors or +size{K,M,G} (63488-102399, default 102399): Using default value 102399
+Partition 4 of type Extended and of size 19 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 5
+First sector (65536-102399, default 65536): Using default value 65536
+Last sector, +sectors or +size{K,M,G} (65536-102399, default 102399): Partition 5 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 6
+First sector (77824-102399, default 77824): Using default value 77824
+Last sector, +sectors or +size{K,M,G} (77824-102399, default 102399): Partition 6 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 7
+First sector (90112-102399, default 90112): Using default value 90112
+Last sector, +sectors or +size{K,M,G} (90112-102399, default 102399): Using default value 102399
+Partition 7 of type Linux and of size 6 MiB is set
+
+Command (m for help):
+Disk /dev/loop0: 52 MB, 52428800 bytes, 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/loop0p1 2048 22527 10240 83 Linux
+/dev/loop0p2 22528 43007 10240 83 Linux
+/dev/loop0p3 43008 63487 10240 83 Linux
+/dev/loop0p4 63488 102399 19456 5 Extended
+/dev/loop0p5 65536 75775 5120 83 Linux
+/dev/loop0p6 77824 88063 5120 83 Linux
+/dev/loop0p7 90112 102399 6144 83 Linux
+
+Command (m for help):
diff --git a/tests/expected/fdisk/align-512-512-topology b/tests/expected/fdisk/align-512-512-topology
new file mode 100644
index 0000000..d16233f
--- /dev/null
+++ b/tests/expected/fdisk/align-512-512-topology
@@ -0,0 +1,79 @@
+Create partitions
+
+
+Changes will remain in memory only, until you decide to write them.
+Be careful before using the write command.
+
+Device does not contain a recognized partition table
+
+
+Command (m for help): Partition type:
+ p primary (0 primary, 0 extended, 4 free)
+ e extended
+Select (default p): Partition number (1-4, default 1): First sector (2048-102399, default 2048): Using default value 2048
+Last sector, +sectors or +size{K,M,G} (2048-102399, default 102399): Partition 1 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (1 primary, 0 extended, 3 free)
+ e extended
+Select (default p): Partition number (1-4, default 2): First sector (22528-102399, default 22528): Using default value 22528
+Last sector, +sectors or +size{K,M,G} (22528-102399, default 102399): Partition 2 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (2 primary, 0 extended, 2 free)
+ e extended
+Select (default p): Partition number (1-4, default 3): First sector (43008-102399, default 43008): Using default value 43008
+Last sector, +sectors or +size{K,M,G} (43008-102399, default 102399): Partition 3 of type Linux and of size 10 MiB is set
+
+Command (m for help): Partition type:
+ p primary (3 primary, 0 extended, 1 free)
+ e extended
+Select (default e): Selected partition 4
+First sector (63488-102399, default 63488): Using default value 63488
+Last sector, +sectors or +size{K,M,G} (63488-102399, default 102399): Using default value 102399
+Partition 4 of type Extended and of size 19 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 5
+First sector (65536-102399, default 65536): Using default value 65536
+Last sector, +sectors or +size{K,M,G} (65536-102399, default 102399): Partition 5 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 6
+First sector (77824-102399, default 77824): Using default value 77824
+Last sector, +sectors or +size{K,M,G} (77824-102399, default 102399): Partition 6 of type Linux and of size 5 MiB is set
+
+Command (m for help): All primary partitions are in use
+Adding logical partition 7
+First sector (90112-102399, default 90112): Using default value 90112
+Last sector, +sectors or +size{K,M,G} (90112-102399, default 102399): Using default value 102399
+Partition 7 of type Linux and of size 6 MiB is set
+
+Command (m for help):
+Disk /dev/...: 52 MB, 52428800 bytes, 102400 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 32768 bytes
+
+
+ Device Boot Start End Blocks Id System
+/dev/...1 2048 22527 10240 83 Linux
+/dev/...2 22528 43007 10240 83 Linux
+/dev/...3 43008 63487 10240 83 Linux
+/dev/...4 63488 102399 19456 5 Extended
+/dev/...5 65536 75775 5120 83 Linux
+/dev/...6 77824 88063 5120 83 Linux
+/dev/...7 90112 102399 6144 83 Linux
+
+Command (m for help): The partition table has been altered!
+
+Calling ioctl() to re-read partition table.
+Syncing disks.
+Alignment offsets:
+0
+0
+0
+0
+0
+0
+0
diff --git a/tests/expected/fdisk/id b/tests/expected/fdisk/id
new file mode 100644
index 0000000..4801f81
--- /dev/null
+++ b/tests/expected/fdisk/id
@@ -0,0 +1,5 @@
+Initialize empty image
+Create MBR with ID=0x1
+Disk identifier: 0x00000001
+Create MBR with ID=0x2
+Disk identifier: 0x00000002
diff --git a/tests/expected/fdisk/mbr-dos-mode b/tests/expected/fdisk/mbr-dos-mode
new file mode 100644
index 0000000..b04f956
--- /dev/null
+++ b/tests/expected/fdisk/mbr-dos-mode
@@ -0,0 +1,182 @@
+Initialize empty image
+f1c9645dbc14efddc7d8a322685f26eb mbr-dos-mode.img
+Create new DOS partition table
+57e721e38d1266c2df055067c18f2cf9 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+-------------------
+
+Create primary partition
+ae4f9b12f4a768849f72ea36938c30c7 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+-------------------
+
+Set partition type
+4a5dba818f9962a82a086d8b99b89a17 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 bf Solaris
+-------------------
+
+Set primary partition active
+c30e9c761b71cf95c67e758b93706ac5 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 * 1 1 8001 bf Solaris
+-------------------
+
+Re-create primary partition
+ae4f9b12f4a768849f72ea36938c30c7 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+-------------------
+
+Create extended partition
+76987a00b353687cd1dba3ddea9d66f9 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+__ts_dev__2 2 12 88357+ 5 Extended
+-------------------
+
+Create logical partitions
+a1cd6708e4a6d2e5f6bc9d5c0da0cf3b mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 57 MB, 57577472 bytes, 112456 sectors
+255 heads, 63 sectors/track, 7 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+__ts_dev__2 2 12 88357+ 5 Extended
+__ts_dev__5 2 3 16033+ 83 Linux
+__ts_dev__6 4 5 16033+ 83 Linux
+__ts_dev__7 6 7 16033+ 83 Linux
+__ts_dev__8 8 9 16033+ 83 Linux
+-------------------
+
+Delete logical partitions
+4c6937d529ace5661fb82efb9394154a mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 57 MB, 57577472 bytes, 112456 sectors
+255 heads, 63 sectors/track, 7 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+__ts_dev__2 2 12 88357+ 5 Extended
+__ts_dev__5 6 7 16033+ 83 Linux
+-------------------
+
+Create another logical partition
+9589eaaed698d2402945ab3e513c1eb4 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 57 MB, 57577472 bytes, 112456 sectors
+255 heads, 63 sectors/track, 7 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 1 1 8001 83 Linux
+__ts_dev__2 2 12 88357+ 5 Extended
+__ts_dev__5 6 7 16033+ 83 Linux
+__ts_dev__6 2 3 16033+ 83 Linux
+
+Partition table entries are not in disk order
+-------------------
+
+Delete primary partition
+1e6d646e5df66a2664cfbbb13fa9a08a mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 57 MB, 57577472 bytes, 112456 sectors
+255 heads, 63 sectors/track, 7 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__2 2 12 88357+ 5 Extended
+__ts_dev__5 6 7 16033+ 83 Linux
+__ts_dev__6 2 3 16033+ 83 Linux
+
+Partition table entries are not in disk order
+-------------------
+
+Delete extended partition
+fc3cdb12326656d7996b09b6f76973e7 mbr-dos-mode.img
+
+---layout----------
+__ts_dev__: 57 MB, 57577472 bytes, 112456 sectors
+255 heads, 63 sectors/track, 7 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+-------------------
+
diff --git a/tests/expected/fdisk/mbr-nondos-mode b/tests/expected/fdisk/mbr-nondos-mode
new file mode 100644
index 0000000..6ded30f
--- /dev/null
+++ b/tests/expected/fdisk/mbr-nondos-mode
@@ -0,0 +1,195 @@
+Initialize empty image
+8f4e33f3dc3e414ff94e5fb6905cba8c mbr-nondos-mode.img
+Create new DOS partition table
+4e23561dcb81678bb1bd678722c7cbb7 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+-------------------
+
+Create 1st primary partition
+e21e16b7452d82e2a2810a1de8c3db05 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+-------------------
+
+Set primary partition active
+47f024f3b406598a0159400af7382e2c mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 * 2048 8191 3072 83 Linux
+-------------------
+
+Re-create 1st primary partition
+a5543ee1e3d2cf79913a56bae893a0f0 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+-------------------
+
+Create 2nd primary partition
+9d31ee977e26e72ebce78e8e543cd4ce mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+__ts_dev__2 8192 12287 2048 83 Linux
+-------------------
+
+Create extended partition
+9528631b198e44564f67f8ca97fa51b8 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+__ts_dev__2 8192 12287 2048 83 Linux
+__ts_dev__3 12288 40959 14336 5 Extended
+-------------------
+
+Create logical partitions
+db4406e7bc0773f234fd1db1b58b5997 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+__ts_dev__2 8192 12287 2048 83 Linux
+__ts_dev__3 12288 40959 14336 5 Extended
+__ts_dev__5 14336 18431 2048 83 Linux
+__ts_dev__6 20480 24575 2048 83 Linux
+__ts_dev__7 26624 30719 2048 83 Linux
+__ts_dev__8 32768 36863 2048 83 Linux
+-------------------
+
+Delete logical partitions
+de85b8d74f52f307b9467ea4c33438cb mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+__ts_dev__2 8192 12287 2048 83 Linux
+__ts_dev__3 12288 40959 14336 5 Extended
+__ts_dev__5 26624 30719 2048 83 Linux
+-------------------
+
+Create another logical partition
+28d0cbe795535ee025dc7a4781516965 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__1 2048 8191 3072 83 Linux
+__ts_dev__2 8192 12287 2048 83 Linux
+__ts_dev__3 12288 40959 14336 5 Extended
+__ts_dev__5 26624 30719 2048 83 Linux
+__ts_dev__6 14336 18431 2048 83 Linux
+
+Partition table entries are not in disk order
+-------------------
+
+Delete primary partition
+6f1b62718cf8d83602d51de8944cee51 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__2 8192 12287 2048 83 Linux
+__ts_dev__3 12288 40959 14336 5 Extended
+__ts_dev__5 26624 30719 2048 83 Linux
+__ts_dev__6 14336 18431 2048 83 Linux
+
+Partition table entries are not in disk order
+-------------------
+
+Delete primary partition
+7b29a3cda33e990e8a7877b81988b933 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+__ts_dev__3 12288 40959 14336 5 Extended
+__ts_dev__5 26624 30719 2048 83 Linux
+__ts_dev__6 14336 18431 2048 83 Linux
+
+Partition table entries are not in disk order
+-------------------
+
+Delete extended partition
+e1ef48d3d42f4ebcfd5bf4baf5e370e9 mbr-nondos-mode.img
+
+---layout----------
+__ts_dev__: 20 MB, 20971520 bytes, 40960 sectors
+Units = sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+Disk identifier: 0x00000001
+
+ Device Boot Start End Blocks Id System
+-------------------
+
diff --git a/tests/expected/fdisk/oddinput b/tests/expected/fdisk/oddinput
new file mode 100644
index 0000000..a681d0d
--- /dev/null
+++ b/tests/expected/fdisk/oddinput
@@ -0,0 +1,14 @@
+Initialize empty image
+f1c9645dbc14efddc7d8a322685f26eb oddinput.img
+Empty image listing
+
+Disk testimage: 10 MB, 10485760 bytes, 20480 sectors
+255 heads, 63 sectors/track, 1 cylinders
+Units = cylinders of 16065 * 512 = 8225280 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / 512 bytes
+
+Nonexistant file
+fdisk: cannot open _a_file_that_does_not_exist_: No such file or directory
+Too small file
+fdisk: cannot open oddinput.toosmall: Invalid argument
diff --git a/tests/expected/fdisk/oddinput.toosmall b/tests/expected/fdisk/oddinput.toosmall
new file mode 100644
index 0000000..06c75ed
--- /dev/null
+++ b/tests/expected/fdisk/oddinput.toosmall
@@ -0,0 +1 @@
+This file is too small
diff --git a/tests/expected/fdisk/sunlabel b/tests/expected/fdisk/sunlabel
new file mode 100644
index 0000000..03ad0c7
--- /dev/null
+++ b/tests/expected/fdisk/sunlabel
@@ -0,0 +1,16 @@
+Initialize empty image
+f1c9645dbc14efddc7d8a322685f26eb sunlabel.img
+Create new SUN partition table
+0a32b3a8da607252eda8cdb240cce9fe sunlabel.img
+Create first partition
+10da37badd1a702ff7e3d3f7a84cd879 sunlabel.img
+Set partition sysid
+414df1b428e2f7ec1b3d0fbdf9a28264 sunlabel.img
+Set first partition readonly
+2bc64800c541254e87643262bd9ccc85 sunlabel.img
+Set first partition mountable
+2f5087a60c3aee42c3bc7c681e2f8e0d sunlabel.img
+Create second partition
+5d1557c0d29167f4186d73abd0dcb2f3 sunlabel.img
+Delete all partitions
+f7e309657add78ea53696e2746df9f29 sunlabel.img
diff --git a/tests/expected/fsck/ismounted b/tests/expected/fsck/ismounted
new file mode 100644
index 0000000..bc3bd43
--- /dev/null
+++ b/tests/expected/fsck/ismounted
@@ -0,0 +1 @@
+mounted
diff --git a/tests/expected/ipcs/headers b/tests/expected/ipcs/headers
new file mode 100644
index 0000000..298d8c9
--- /dev/null
+++ b/tests/expected/ipcs/headers
@@ -0,0 +1,64 @@
+test: shm headers
+------ Shared Memory Attach/Detach/Change Times --------
+shmid owner attached detached changed
+------ Shared Memory Creator/Last-op PIDs --------
+shmid owner cpid lpid
+------ Shared Memory Segment Creators/Owners --------
+shmid perms cuid cgid uid gid
+------ Shared Memory Limits --------
+------ Shared Memory Status --------
+
+test: mesg headers
+------ Message Queues Send/Recv/Change Times --------
+msqid owner send recv change
+------ Message Queues PIDs --------
+msqid owner lspid lrpid
+------ Message Queues Creators/Owners --------
+msqid perms cuid cgid uid gid
+------ Messages Limits --------
+------ Messages Status --------
+
+test: sem headers
+------ Semaphore Operation/Change Times --------
+semid owner last-op last-changed
+------ Semaphore Arrays Creators/Owners --------
+semid perms cuid cgid uid gid
+------ Semaphore Limits --------
+------ Semaphore Status --------
+
+test: all headers
+------ Shared Memory Segments --------
+key shmid owner perms bytes nattch status
+--
+------ Semaphore Arrays --------
+key semid owner perms nsems
+--
+------ Message Queues --------
+key msqid owner perms used-bytes messages
+------ Shared Memory Attach/Detach/Change Times --------
+shmid owner attached detached changed
+--
+------ Semaphore Operation/Change Times --------
+semid owner last-op last-changed
+--
+------ Message Queues Send/Recv/Change Times --------
+msqid owner send recv change
+------ Shared Memory Creator/Last-op PIDs --------
+shmid owner cpid lpid
+--
+------ Message Queues PIDs --------
+msqid owner lspid lrpid
+------ Shared Memory Segment Creators/Owners --------
+shmid perms cuid cgid uid gid
+--
+------ Semaphore Arrays Creators/Owners --------
+semid perms cuid cgid uid gid
+--
+------ Message Queues Creators/Owners --------
+msqid perms cuid cgid uid gid
+------ Shared Memory Limits --------
+------ Semaphore Limits --------
+------ Messages Limits --------
+------ Shared Memory Status --------
+------ Semaphore Status --------
+------ Messages Status --------
diff --git a/tests/expected/ipcs/limits b/tests/expected/ipcs/limits
new file mode 100644
index 0000000..7480a1e
--- /dev/null
+++ b/tests/expected/ipcs/limits
@@ -0,0 +1,11 @@
+load original values
+check for difference between kernel and IPC
+/proc/sys/kernel/shmmni OK
+/proc/sys/kernel/shmall OK
+/proc/sys/kernel/shmmax OK
+maximalize kernel setting
+re-check for difference between kernel and IPC
+/proc/sys/kernel/shmmni OK
+/proc/sys/kernel/shmall OK
+/proc/sys/kernel/shmmax OK
+write original values to kernel
diff --git a/tests/expected/ipcs/limits2 b/tests/expected/ipcs/limits2
new file mode 100644
index 0000000..28454e3
--- /dev/null
+++ b/tests/expected/ipcs/limits2
@@ -0,0 +1,4 @@
+check for difference between kernel and IPC
+/proc/sys/kernel/shmmni OK
+/proc/sys/kernel/shmall OK
+/proc/sys/kernel/shmmax OK
diff --git a/tests/expected/libmount/context b/tests/expected/libmount/context
new file mode 100644
index 0000000..5e268a3
--- /dev/null
+++ b/tests/expected/libmount/context
@@ -0,0 +1,5 @@
+Init device
+Create partitions
+Create filesystem
+Do tests...
+...done.
diff --git a/tests/expected/libmount/context-mount-by-devname b/tests/expected/libmount/context-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-mount-by-label b/tests/expected/libmount/context-mount-by-label
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-label
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-mount-by-uuid b/tests/expected/libmount/context-mount-by-uuid
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-uuid
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-mount-flags b/tests/expected/libmount/context-mount-flags
new file mode 100644
index 0000000..9606418
--- /dev/null
+++ b/tests/expected/libmount/context-mount-flags
@@ -0,0 +1,5 @@
+successfully mounted
+ro,nosuid,noexec
+successfully mounted
+rw,nosuid,noexec
+successfully umounted
diff --git a/tests/expected/libmount/context-mount-loopdev b/tests/expected/libmount/context-mount-loopdev
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-mount-loopdev
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-umount-by-devname b/tests/expected/libmount/context-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-umount-by-mountpoint b/tests/expected/libmount/context-umount-by-mountpoint
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-umount-by-mountpoint
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab b/tests/expected/libmount/context-utab
new file mode 100644
index 0000000..cde2e3f
--- /dev/null
+++ b/tests/expected/libmount/context-utab
@@ -0,0 +1,9 @@
+Init device
+Create partitions
+Create filesystem
+Do tests...
+Create filesystem [btrfs]
+All mount options (btrfs subvolume + utab) ---
+rw,relatime,ssd,uhelper=foo
+---
+...done.
diff --git a/tests/expected/libmount/context-utab-mount-by-devname b/tests/expected/libmount/context-utab-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-mount-uhelper b/tests/expected/libmount/context-utab-mount-uhelper
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-uhelper
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-mount-uhelper-subvol b/tests/expected/libmount/context-utab-mount-uhelper-subvol
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-uhelper-subvol
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-umount b/tests/expected/libmount/context-utab-umount
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-umount-by-devname b/tests/expected/libmount/context-utab-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-umount-subvol b/tests/expected/libmount/context-utab-umount-subvol
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount-subvol
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/lock b/tests/expected/libmount/lock
new file mode 100644
index 0000000..d7e318d
--- /dev/null
+++ b/tests/expected/libmount/lock
@@ -0,0 +1 @@
+50000 \ No newline at end of file
diff --git a/tests/expected/libmount/optstr-append b/tests/expected/libmount/optstr-append
new file mode 100644
index 0000000..68e5845
--- /dev/null
+++ b/tests/expected/libmount/optstr-append
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,context="foo,bar,gogo",ccc,ddd<
diff --git a/tests/expected/libmount/optstr-append-value b/tests/expected/libmount/optstr-append-value
new file mode 100644
index 0000000..e0116f6
--- /dev/null
+++ b/tests/expected/libmount/optstr-append-value
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc,ddd=DDD<
diff --git a/tests/expected/libmount/optstr-apply-linux b/tests/expected/libmount/optstr-apply-linux
new file mode 100644
index 0000000..50a52a7
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-linux
@@ -0,0 +1,2 @@
+flags: 0x00000400
+optstr: rw,user=kzak,noatime
diff --git a/tests/expected/libmount/optstr-apply-user b/tests/expected/libmount/optstr-apply-user
new file mode 100644
index 0000000..2f34732
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-user
@@ -0,0 +1,2 @@
+flags: 0x00000408
+optstr: noexec,nosuid,user,nofail
diff --git a/tests/expected/libmount/optstr-deduplicate b/tests/expected/libmount/optstr-deduplicate
new file mode 100644
index 0000000..e2b669a
--- /dev/null
+++ b/tests/expected/libmount/optstr-deduplicate
@@ -0,0 +1 @@
+result: >bbb,ccc,xxx,ddd,AAA=ccc,fff=eee<
diff --git a/tests/expected/libmount/optstr-fix b/tests/expected/libmount/optstr-fix
new file mode 100644
index 0000000..9eb6817
--- /dev/null
+++ b/tests/expected/libmount/optstr-fix
@@ -0,0 +1,2 @@
+optstr: uid=root,gid=root
+fixed: uid=0,gid=0
diff --git a/tests/expected/libmount/optstr-flags b/tests/expected/libmount/optstr-flags
new file mode 100644
index 0000000..17b4727
--- /dev/null
+++ b/tests/expected/libmount/optstr-flags
@@ -0,0 +1,2 @@
+mountflags: 0x0000000e
+userspace-mountflags: 0x00002208
diff --git a/tests/expected/libmount/optstr-get b/tests/expected/libmount/optstr-get
new file mode 100644
index 0000000..7eafc65
--- /dev/null
+++ b/tests/expected/libmount/optstr-get
@@ -0,0 +1 @@
+found; name: aaa
diff --git a/tests/expected/libmount/optstr-get-value b/tests/expected/libmount/optstr-get-value
new file mode 100644
index 0000000..509843f
--- /dev/null
+++ b/tests/expected/libmount/optstr-get-value
@@ -0,0 +1 @@
+found; name: bbb, argument: size=3 data=BBB
diff --git a/tests/expected/libmount/optstr-prepend b/tests/expected/libmount/optstr-prepend
new file mode 100644
index 0000000..cdcf751
--- /dev/null
+++ b/tests/expected/libmount/optstr-prepend
@@ -0,0 +1 @@
+result: >ddd,aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-prepend-value b/tests/expected/libmount/optstr-prepend-value
new file mode 100644
index 0000000..debc7ee
--- /dev/null
+++ b/tests/expected/libmount/optstr-prepend-value
@@ -0,0 +1 @@
+result: >ddd=DDD,aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove b/tests/expected/libmount/optstr-remove
new file mode 100644
index 0000000..4c28ed2
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove
@@ -0,0 +1 @@
+result: >bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove-quoted b/tests/expected/libmount/optstr-remove-quoted
new file mode 100644
index 0000000..92fc5e3
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove-quoted
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove-value b/tests/expected/libmount/optstr-remove-value
new file mode 100644
index 0000000..eee5c95
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove-value
@@ -0,0 +1 @@
+result: >aaa,ccc<
diff --git a/tests/expected/libmount/optstr-set-large b/tests/expected/libmount/optstr-set-large
new file mode 100644
index 0000000..b518c26
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-large
@@ -0,0 +1 @@
+result: >aaa,bbb=XXX-YYY-ZZZ,ccc<
diff --git a/tests/expected/libmount/optstr-set-new b/tests/expected/libmount/optstr-set-new
new file mode 100644
index 0000000..5d45b4f
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new
@@ -0,0 +1 @@
+result: >aaa=XXX,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-set-new-end b/tests/expected/libmount/optstr-set-new-end
new file mode 100644
index 0000000..39675a4
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new-end
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc=XXX<
diff --git a/tests/expected/libmount/optstr-set-remove b/tests/expected/libmount/optstr-set-remove
new file mode 100644
index 0000000..0505bed
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-remove
@@ -0,0 +1 @@
+result: >aaa,bbb,ccc<
diff --git a/tests/expected/libmount/optstr-set-small b/tests/expected/libmount/optstr-set-small
new file mode 100644
index 0000000..6c358b3
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-small
@@ -0,0 +1 @@
+result: >aaa,bbb=X,ccc<
diff --git a/tests/expected/libmount/optstr-split b/tests/expected/libmount/optstr-split
new file mode 100644
index 0000000..341a640
--- /dev/null
+++ b/tests/expected/libmount/optstr-split
@@ -0,0 +1,3 @@
+user : x-bar,x-foo=foodata,user=kzak,loop=/dev/loop0
+vfs : noexec,nosuid
+fs : aaa,bbb=BBB,ccc
diff --git a/tests/expected/libmount/tabdiff b/tests/expected/libmount/tabdiff
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/expected/libmount/tabdiff
diff --git a/tests/expected/libmount/tabdiff-mount b/tests/expected/libmount/tabdiff-mount
new file mode 100644
index 0000000..e42c58b
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-mount
@@ -0,0 +1 @@
+/dev/mapper/kzak-home on /home/kzak: MOUNTED
diff --git a/tests/expected/libmount/tabdiff-move b/tests/expected/libmount/tabdiff-move
new file mode 100644
index 0000000..4bed704
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-move
@@ -0,0 +1 @@
+//foo.home/bar/ on /mnt/music: MOVED to /mnt/music
diff --git a/tests/expected/libmount/tabdiff-remount b/tests/expected/libmount/tabdiff-remount
new file mode 100644
index 0000000..c23ee95
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-remount
@@ -0,0 +1,2 @@
+/dev/mapper/kzak-home on /home/kzak: REMOUNTED from 'rw,noatime,barrier=1,data=ordered' to 'ro,noatime,barrier=1,data=ordered'
+//foo.home/bar/ on /mnt/sounds: REMOUNTED from 'rw,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344' to 'ro,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344'
diff --git a/tests/expected/libmount/tabdiff-umount b/tests/expected/libmount/tabdiff-umount
new file mode 100644
index 0000000..753f484
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-umount
@@ -0,0 +1 @@
+/dev/mapper/kzak-home on /home/kzak: UMOUNTED
diff --git a/tests/expected/libmount/tabfiles-copy b/tests/expected/libmount/tabfiles-copy
new file mode 100644
index 0000000..0054586
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-copy
@@ -0,0 +1,18 @@
+ORIGINAL:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+COPY:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
diff --git a/tests/expected/libmount/tabfiles-find-pair b/tests/expected/libmount/tabfiles-find-pair
new file mode 100644
index 0000000..fbd730a
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-pair
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
diff --git a/tests/expected/libmount/tabfiles-find-source b/tests/expected/libmount/tabfiles-find-source
new file mode 100644
index 0000000..474652c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-source
@@ -0,0 +1,8 @@
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
diff --git a/tests/expected/libmount/tabfiles-find-target b/tests/expected/libmount/tabfiles-find-target
new file mode 100644
index 0000000..1a51bd5
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
diff --git a/tests/expected/libmount/tabfiles-find-target2 b/tests/expected/libmount/tabfiles-find-target2
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target2
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-find-target3 b/tests/expected/libmount/tabfiles-find-target3
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target3
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-parse-fstab b/tests/expected/libmount/tabfiles-parse-fstab
new file mode 100644
index 0000000..d661526
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-fstab
@@ -0,0 +1,65 @@
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-parse-fstab-broken b/tests/expected/libmount/tabfiles-parse-fstab-broken
new file mode 100644
index 0000000..b838fbc
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-fstab-broken
@@ -0,0 +1,63 @@
+
+
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
diff --git a/tests/expected/libmount/tabfiles-parse-mountinfo b/tests/expected/libmount/tabfiles-parse-mountinfo
new file mode 100644
index 0000000..4470801
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-mountinfo
@@ -0,0 +1,352 @@
+------ fs:
+source: /proc
+target: /proc
+fstype: proc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 15
+parent: 20
+devno: 0:3
+------ fs:
+source: /sys
+target: /sys
+fstype: sysfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 16
+parent: 20
+devno: 0:15
+------ fs:
+source: udev
+target: /dev
+fstype: devtmpfs
+optstr: rw,relatime,size=1983516k,nr_inodes=495879,mode=755
+VFS-optstr: rw,relatime
+FS-opstr: rw,size=1983516k,nr_inodes=495879,mode=755
+root: /
+id: 17
+parent: 20
+devno: 0:5
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,relatime,gid=5,mode=620,ptmxmode=000
+VFS-optstr: rw,relatime
+FS-opstr: rw,gid=5,mode=620,ptmxmode=000
+root: /
+id: 18
+parent: 17
+devno: 0:10
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 19
+parent: 17
+devno: 0:16
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime,errors=continue,user_xattr,acl,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+root: /
+id: 20
+parent: 1
+devno: 8:4
+------ fs:
+source: tmpfs
+target: /sys/fs/cgroup
+fstype: tmpfs
+optstr: rw,nosuid,nodev,noexec,relatime,mode=755
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,mode=755
+root: /
+id: 21
+parent: 16
+devno: 0:17
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/systemd
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+root: /
+id: 22
+parent: 21
+devno: 0:18
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuset
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuset
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuset
+root: /
+id: 23
+parent: 21
+devno: 0:19
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/ns
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,ns
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,ns
+root: /
+id: 24
+parent: 21
+devno: 0:20
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpu
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpu
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpu
+root: /
+id: 25
+parent: 21
+devno: 0:21
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuacct
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuacct
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuacct
+root: /
+id: 26
+parent: 21
+devno: 0:22
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/memory
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,memory
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,memory
+root: /
+id: 27
+parent: 21
+devno: 0:23
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/devices
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,devices
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,devices
+root: /
+id: 28
+parent: 21
+devno: 0:24
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/freezer
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,freezer
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,freezer
+root: /
+id: 29
+parent: 21
+devno: 0:25
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/net_cls
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,net_cls
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,net_cls
+root: /
+id: 30
+parent: 21
+devno: 0:26
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/blkio
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,blkio
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,blkio
+root: /
+id: 31
+parent: 21
+devno: 0:27
+------ fs:
+source: systemd-1
+target: /sys/kernel/security
+fstype: autofs
+optstr: rw,relatime,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 32
+parent: 16
+devno: 0:28
+------ fs:
+source: systemd-1
+target: /dev/hugepages
+fstype: autofs
+optstr: rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 33
+parent: 17
+devno: 0:29
+------ fs:
+source: systemd-1
+target: /sys/kernel/debug
+fstype: autofs
+optstr: rw,relatime,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 34
+parent: 16
+devno: 0:30
+------ fs:
+source: systemd-1
+target: /proc/sys/fs/binfmt_misc
+fstype: autofs
+optstr: rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 35
+parent: 15
+devno: 0:31
+------ fs:
+source: systemd-1
+target: /dev/mqueue
+fstype: autofs
+optstr: rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 36
+parent: 17
+devno: 0:32
+------ fs:
+source: /proc/bus/usb
+target: /proc/bus/usb
+fstype: usbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 37
+parent: 15
+devno: 0:14
+------ fs:
+source: hugetlbfs
+target: /dev/hugepages
+fstype: hugetlbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 38
+parent: 33
+devno: 0:33
+------ fs:
+source: mqueue
+target: /dev/mqueue
+fstype: mqueue
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 39
+parent: 36
+devno: 0:12
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime,errors=continue,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,barrier=0,data=ordered
+root: /
+id: 40
+parent: 20
+devno: 8:6
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime,barrier=1,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,barrier=1,data=ordered
+root: /
+id: 41
+parent: 20
+devno: 253:0
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 42
+parent: 35
+devno: 0:34
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 43
+parent: 16
+devno: 0:35
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,relatime,user_id=500,group_id=500
+VFS-optstr: rw,nosuid,nodev,relatime
+FS-opstr: rw,user_id=500,group_id=500
+root: /
+id: 44
+parent: 41
+devno: 0:36
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 45
+parent: 20
+devno: 0:37
+------ fs:
+source: //foo.home/bar/
+target: /mnt/sounds
+fstype: cifs
+optstr: rw,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+VFS-optstr: rw,relatime
+FS-opstr: rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+root: /
+id: 47
+parent: 20
+devno: 0:38
diff --git a/tests/expected/libmount/tabfiles-parse-mtab b/tests/expected/libmount/tabfiles-parse-mtab
new file mode 100644
index 0000000..ffd0c13
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-mtab
@@ -0,0 +1,68 @@
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,gid=5,mode=620
+VFS-optstr: rw
+FS-opstr: gid=5,mode=620
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,user=kzak
+VFS-optstr: rw,nosuid,nodev
+user-optstr: user=kzak
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw
+VFS-optstr: rw
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-dev b/tests/expected/libmount/tabfiles-tags-fstab-dev
new file mode 100644
index 0000000..823a19c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-dev
@@ -0,0 +1,5 @@
+------ fs:
+
+target: /mnt/mountpoint3
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-dev2label b/tests/expected/libmount/tabfiles-tags-fstab-dev2label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-dev2label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label b/tests/expected/libmount/tabfiles-tags-fstab-label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label2dev b/tests/expected/libmount/tabfiles-tags-fstab-label2dev
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label2dev
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label2uuid b/tests/expected/libmount/tabfiles-tags-fstab-label2uuid
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label2uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-uuid b/tests/expected/libmount/tabfiles-tags-fstab-uuid
new file mode 100644
index 0000000..67d4e7b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: UUID=de1bc6e9-34ab-4151-a1d7-900042eee8d9
+target: /mnt/mountpoint2
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/update-fstab-add b/tests/expected/libmount/update-fstab-add
new file mode 100644
index 0000000..2b36d58
--- /dev/null
+++ b/tests/expected/libmount/update-fstab-add
@@ -0,0 +1,3 @@
+/dev/sda1 /mnt/foo ext3 rw,bbb,ccc,fff=FFF,ddd,noexec 1 2
+/dev/sda2 /mnt/bar auto defaults 1 2
+/dev/sda3 /mnt/bar auto rw,context="some,selinux,junk",noatime 1 2
diff --git a/tests/expected/libmount/update-mtab-mount b/tests/expected/libmount/update-mtab-mount
new file mode 100644
index 0000000..6fdf7c1
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-mount
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/foo ext3 rw,noexec,bbb,ccc,fff=FFF,ddd 0 0
+/dev/sdb1 /mnt/bar ext3 ro,noatime,gg=G,ffff=f 0 0
+/dev/sda2 /mnt/bar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-move b/tests/expected/libmount/update-mtab-move
new file mode 100644
index 0000000..6185b6b
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-move
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/newfoo ext3 rw,noexec,bbb,ccc,fff=FFF,ddd 0 0
+/dev/sdb1 /mnt/bar ext3 ro,noatime,gg=G,ffff=f 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-remount b/tests/expected/libmount/update-mtab-remount
new file mode 100644
index 0000000..c397b23
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-remount
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/newfoo ext3 ro,noatime 0 0
+/dev/sdb1 /mnt/bar ext3 rw,atime,nosuid 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-umount b/tests/expected/libmount/update-mtab-umount
new file mode 100644
index 0000000..be02573
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-umount
@@ -0,0 +1,2 @@
+/dev/sda1 /mnt/newfoo ext3 ro,noatime 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
diff --git a/tests/expected/libmount/update-utab-mount b/tests/expected/libmount/update-utab-mount
new file mode 100644
index 0000000..58a0179
--- /dev/null
+++ b/tests/expected/libmount/update-utab-mount
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/bar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/xyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-move b/tests/expected/libmount/update-utab-move
new file mode 100644
index 0000000..6008140
--- /dev/null
+++ b/tests/expected/libmount/update-utab-move
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-remount b/tests/expected/libmount/update-utab-remount
new file mode 100644
index 0000000..8e344b3
--- /dev/null
+++ b/tests/expected/libmount/update-utab-remount
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=user
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-umount b/tests/expected/libmount/update-utab-umount
new file mode 100644
index 0000000..4c07d74
--- /dev/null
+++ b/tests/expected/libmount/update-utab-umount
@@ -0,0 +1 @@
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/utils-ends-with b/tests/expected/libmount/utils-ends-with
new file mode 100644
index 0000000..f033a50
--- /dev/null
+++ b/tests/expected/libmount/utils-ends-with
@@ -0,0 +1 @@
+YES
diff --git a/tests/expected/libmount/utils-fs-root b/tests/expected/libmount/utils-fs-root
new file mode 100644
index 0000000..7746b28
--- /dev/null
+++ b/tests/expected/libmount/utils-fs-root
@@ -0,0 +1 @@
+/proc: /
diff --git a/tests/expected/libmount/utils-fs-root-subdir b/tests/expected/libmount/utils-fs-root-subdir
new file mode 100644
index 0000000..09cdb8d
--- /dev/null
+++ b/tests/expected/libmount/utils-fs-root-subdir
@@ -0,0 +1 @@
+/proc/sys/kernel: /sys/kernel
diff --git a/tests/expected/libmount/utils-fs-root-subdir2 b/tests/expected/libmount/utils-fs-root-subdir2
new file mode 100644
index 0000000..2e8b89a
--- /dev/null
+++ b/tests/expected/libmount/utils-fs-root-subdir2
@@ -0,0 +1 @@
+/etc: /etc
diff --git a/tests/expected/libmount/utils-match-fstype b/tests/expected/libmount/utils-match-fstype
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-fstype-neg b/tests/expected/libmount/utils-match-fstype-neg
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype-neg
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-fstype-neg2 b/tests/expected/libmount/utils-match-fstype-neg2
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype-neg2
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-options b/tests/expected/libmount/utils-match-options
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-list b/tests/expected/libmount/utils-match-options-list
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-list
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg b/tests/expected/libmount/utils-match-options-neg
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg-list b/tests/expected/libmount/utils-match-options-neg-list
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg-list
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg-list2 b/tests/expected/libmount/utils-match-options-neg-list2
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg-list2
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-mountpoint b/tests/expected/libmount/utils-mountpoint
new file mode 100644
index 0000000..47fb251
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint
@@ -0,0 +1 @@
+/proc: /proc
diff --git a/tests/expected/libmount/utils-mountpoint-root b/tests/expected/libmount/utils-mountpoint-root
new file mode 100644
index 0000000..c86cf0d
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint-root
@@ -0,0 +1 @@
+/: /
diff --git a/tests/expected/libmount/utils-mountpoint-subdir b/tests/expected/libmount/utils-mountpoint-subdir
new file mode 100644
index 0000000..f21d31b
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint-subdir
@@ -0,0 +1 @@
+/proc/sys/kernel: /proc
diff --git a/tests/expected/libmount/utils-starts-with b/tests/expected/libmount/utils-starts-with
new file mode 100644
index 0000000..f033a50
--- /dev/null
+++ b/tests/expected/libmount/utils-starts-with
@@ -0,0 +1 @@
+YES
diff --git a/tests/expected/login/islocal b/tests/expected/login/islocal
new file mode 100644
index 0000000..c5d43ff
--- /dev/null
+++ b/tests/expected/login/islocal
@@ -0,0 +1,13 @@
+1:root
+1:nobody
+0:
+0:youngman
+0:youngman2
+0:abcdefghx
+0:nobo
+1:long
+0:rot
+1:al
+0:malformed
+1:nonl
+0:znobody
diff --git a/tests/expected/login/logindefs b/tests/expected/login/logindefs
new file mode 100644
index 0000000..aca2a1f
--- /dev/null
+++ b/tests/expected/login/logindefs
@@ -0,0 +1,14 @@
+logindefs.data: $END: 'the is end'
+logindefs.data: $EMPTY: '(null)'
+logindefs.data: $CRAZY3: 'FoooBaaar'
+logindefs.data: $CRAZY2: 'fooBar'
+logindefs.data: $CRAZY1: 'this is crazy format'
+logindefs.data: $BOOLEAN: 'yEs'
+logindefs.data: $NUMBER: '123456'
+logindefs.data: $STRING: 'this_is_string'
+logindefs.data: $HELLO_WORLD: 'hello world!'
+$STRING: 'this_is_string'
+$NUMBER: '123456'
+$BOOLEAN: 'Y'
+$EMPTY: ''
+$UNKNOWN: 'DEFAULT'
diff --git a/tests/expected/look/separator b/tests/expected/look/separator
new file mode 100644
index 0000000..8c19d03
--- /dev/null
+++ b/tests/expected/look/separator
@@ -0,0 +1 @@
+apple-pie
diff --git a/tests/expected/lscpu/lscpu-i386-amdshanghai b/tests/expected/lscpu/lscpu-i386-amdshanghai
new file mode 100644
index 0000000..25dcaa9
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-i386-amdshanghai
@@ -0,0 +1,29 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 8
+Thread(s) per core: 1
+Core(s) per socket: 4
+Socket(s): 2
+Vendor ID: AuthenticAMD
+CPU family: 16
+Model: 4
+Stepping: 0
+CPU MHz: 1995.158
+BogoMIPS: 3989.99
+Virtualization: AMD-V
+L1d cache: 512K
+L1i cache: 512K
+L2 cache: 512K
+L3 cache: 6144K
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,,,0,0,0,0
+1,1,0,,,1,1,1,1
+2,2,0,,,2,2,2,2
+3,3,0,,,3,3,3,3
+4,4,1,,,4,4,4,4
+5,5,1,,,5,5,5,5
+6,6,1,,,6,6,6,6
+7,7,1,,,7,7,7,7
diff --git a/tests/expected/lscpu/lscpu-i386-dellpe700 b/tests/expected/lscpu/lscpu-i386-dellpe700
new file mode 100644
index 0000000..77c30af
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-i386-dellpe700
@@ -0,0 +1,17 @@
+CPU(s): 2
+Thread(s) per core: 2
+Core(s) per socket: 1
+Socket(s): 1
+Vendor ID: GenuineIntel
+CPU family: 15
+Model: 2
+Stepping: 9
+CPU MHz: 3391.773
+BogoMIPS: 6781.99
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,0,0,
+1,0,0,
diff --git a/tests/expected/lscpu/lscpu-i386-intels5000phb b/tests/expected/lscpu/lscpu-i386-intels5000phb
new file mode 100644
index 0000000..bc64565
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-i386-intels5000phb
@@ -0,0 +1,28 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 8
+Thread(s) per core: 1
+Core(s) per socket: 4
+Socket(s): 2
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 15
+Stepping: 7
+CPU MHz: 1596.044
+BogoMIPS: 3191.91
+Virtualization: VT-x
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 4096K
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2
+0,0,0,,,0,0,0
+1,1,0,,,1,1,0
+2,2,0,,,2,2,1
+3,3,0,,,3,3,1
+4,4,1,,,4,4,2
+5,5,1,,,5,5,2
+6,6,1,,,6,6,3
+7,7,1,,,7,7,3
diff --git a/tests/expected/lscpu/lscpu-i386-xenpara b/tests/expected/lscpu/lscpu-i386-xenpara
new file mode 100644
index 0000000..ae3fa2c
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-i386-xenpara
@@ -0,0 +1,19 @@
+CPU(s): 2
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 23
+Stepping: 6
+CPU MHz: 2493.776
+Virtualization: VT-x
+Hypervisor vendor: Xen
+Virtualization type: para
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 6144K
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2
+0,,,,,0,0,0
+1,,,,,1,1,0
diff --git a/tests/expected/lscpu/lscpu-ia64-512cpus b/tests/expected/lscpu/lscpu-ia64-512cpus
new file mode 100644
index 0000000..0de3ff4
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-ia64-512cpus
@@ -0,0 +1,654 @@
+CPU(s): 512
+Thread(s) per core: 1
+Core(s) per socket: 2
+Socket(s): 256
+NUMA node(s): 128
+Vendor ID: GenuineIntel
+CPU family: 32
+Model: 0
+CPU MHz: 1594.000007
+NUMA node0 CPU(s): 0-3
+NUMA node1 CPU(s): 4-7
+NUMA node2 CPU(s): 8-11
+NUMA node3 CPU(s): 12-15
+NUMA node4 CPU(s): 16-19
+NUMA node5 CPU(s): 20-23
+NUMA node6 CPU(s): 24-27
+NUMA node7 CPU(s): 28-31
+NUMA node8 CPU(s): 32-35
+NUMA node9 CPU(s): 36-39
+NUMA node10 CPU(s): 40-43
+NUMA node11 CPU(s): 44-47
+NUMA node12 CPU(s): 48-51
+NUMA node13 CPU(s): 52-55
+NUMA node14 CPU(s): 56-59
+NUMA node15 CPU(s): 60-63
+NUMA node16 CPU(s): 64-67
+NUMA node17 CPU(s): 68-71
+NUMA node18 CPU(s): 72-75
+NUMA node19 CPU(s): 76-79
+NUMA node20 CPU(s): 80-83
+NUMA node21 CPU(s): 84-87
+NUMA node22 CPU(s): 88-91
+NUMA node23 CPU(s): 92-95
+NUMA node24 CPU(s): 96-99
+NUMA node25 CPU(s): 100-103
+NUMA node26 CPU(s): 104-107
+NUMA node27 CPU(s): 108-111
+NUMA node28 CPU(s): 112-115
+NUMA node29 CPU(s): 116-119
+NUMA node30 CPU(s): 120-123
+NUMA node31 CPU(s): 124-127
+NUMA node32 CPU(s): 128-131
+NUMA node33 CPU(s): 132-135
+NUMA node34 CPU(s): 136-139
+NUMA node35 CPU(s): 140-143
+NUMA node36 CPU(s): 144-147
+NUMA node37 CPU(s): 148-151
+NUMA node38 CPU(s): 152-155
+NUMA node39 CPU(s): 156-159
+NUMA node40 CPU(s): 160-163
+NUMA node41 CPU(s): 164-167
+NUMA node42 CPU(s): 168-171
+NUMA node43 CPU(s): 172-175
+NUMA node44 CPU(s): 176-179
+NUMA node45 CPU(s): 180-183
+NUMA node46 CPU(s): 184-187
+NUMA node47 CPU(s): 188-191
+NUMA node48 CPU(s): 192-195
+NUMA node49 CPU(s): 196-199
+NUMA node50 CPU(s): 200-203
+NUMA node51 CPU(s): 204-207
+NUMA node52 CPU(s): 208-211
+NUMA node53 CPU(s): 212-215
+NUMA node54 CPU(s): 216-219
+NUMA node55 CPU(s): 220-223
+NUMA node56 CPU(s): 224-227
+NUMA node57 CPU(s): 228-231
+NUMA node58 CPU(s): 232-235
+NUMA node59 CPU(s): 236-239
+NUMA node60 CPU(s): 240-243
+NUMA node61 CPU(s): 244-247
+NUMA node62 CPU(s): 248-251
+NUMA node63 CPU(s): 252-255
+NUMA node64 CPU(s): 256-259
+NUMA node65 CPU(s): 260-263
+NUMA node66 CPU(s): 264-267
+NUMA node67 CPU(s): 268-271
+NUMA node68 CPU(s): 272-275
+NUMA node69 CPU(s): 276-279
+NUMA node70 CPU(s): 280-283
+NUMA node71 CPU(s): 284-287
+NUMA node72 CPU(s): 288-291
+NUMA node73 CPU(s): 292-295
+NUMA node74 CPU(s): 296-299
+NUMA node75 CPU(s): 300-303
+NUMA node76 CPU(s): 304-307
+NUMA node77 CPU(s): 308-311
+NUMA node78 CPU(s): 312-315
+NUMA node79 CPU(s): 316-319
+NUMA node80 CPU(s): 320-323
+NUMA node81 CPU(s): 324-327
+NUMA node82 CPU(s): 328-331
+NUMA node83 CPU(s): 332-335
+NUMA node84 CPU(s): 336-339
+NUMA node85 CPU(s): 340-343
+NUMA node86 CPU(s): 344-347
+NUMA node87 CPU(s): 348-351
+NUMA node88 CPU(s): 352-355
+NUMA node89 CPU(s): 356-359
+NUMA node90 CPU(s): 360-363
+NUMA node91 CPU(s): 364-367
+NUMA node92 CPU(s): 368-371
+NUMA node93 CPU(s): 372-375
+NUMA node94 CPU(s): 376-379
+NUMA node95 CPU(s): 380-383
+NUMA node96 CPU(s): 384-387
+NUMA node97 CPU(s): 388-391
+NUMA node98 CPU(s): 392-395
+NUMA node99 CPU(s): 396-399
+NUMA node100 CPU(s): 400-403
+NUMA node101 CPU(s): 404-407
+NUMA node102 CPU(s): 408-411
+NUMA node103 CPU(s): 412-415
+NUMA node104 CPU(s): 416-419
+NUMA node105 CPU(s): 420-423
+NUMA node106 CPU(s): 424-427
+NUMA node107 CPU(s): 428-431
+NUMA node108 CPU(s): 432-435
+NUMA node109 CPU(s): 436-439
+NUMA node110 CPU(s): 440-443
+NUMA node111 CPU(s): 444-447
+NUMA node112 CPU(s): 448-451
+NUMA node113 CPU(s): 452-455
+NUMA node114 CPU(s): 456-459
+NUMA node115 CPU(s): 460-463
+NUMA node116 CPU(s): 464-467
+NUMA node117 CPU(s): 468-471
+NUMA node118 CPU(s): 472-475
+NUMA node119 CPU(s): 476-479
+NUMA node120 CPU(s): 480-483
+NUMA node121 CPU(s): 484-487
+NUMA node122 CPU(s): 488-491
+NUMA node123 CPU(s): 492-495
+NUMA node124 CPU(s): 496-499
+NUMA node125 CPU(s): 500-503
+NUMA node126 CPU(s): 504-507
+NUMA node127 CPU(s): 508-511
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,0,0,0
+1,1,0,0
+2,2,1,0
+3,3,1,0
+4,4,2,1
+5,5,2,1
+6,6,3,1
+7,7,3,1
+8,8,4,2
+9,9,4,2
+10,10,5,2
+11,11,5,2
+12,12,6,3
+13,13,6,3
+14,14,7,3
+15,15,7,3
+16,16,8,4
+17,17,8,4
+18,18,9,4
+19,19,9,4
+20,20,10,5
+21,21,10,5
+22,22,11,5
+23,23,11,5
+24,24,12,6
+25,25,12,6
+26,26,13,6
+27,27,13,6
+28,28,14,7
+29,29,14,7
+30,30,15,7
+31,31,15,7
+32,32,16,8
+33,33,16,8
+34,34,17,8
+35,35,17,8
+36,36,18,9
+37,37,18,9
+38,38,19,9
+39,39,19,9
+40,40,20,10
+41,41,20,10
+42,42,21,10
+43,43,21,10
+44,44,22,11
+45,45,22,11
+46,46,23,11
+47,47,23,11
+48,48,24,12
+49,49,24,12
+50,50,25,12
+51,51,25,12
+52,52,26,13
+53,53,26,13
+54,54,27,13
+55,55,27,13
+56,56,28,14
+57,57,28,14
+58,58,29,14
+59,59,29,14
+60,60,30,15
+61,61,30,15
+62,62,31,15
+63,63,31,15
+64,64,32,16
+65,65,32,16
+66,66,33,16
+67,67,33,16
+68,68,34,17
+69,69,34,17
+70,70,35,17
+71,71,35,17
+72,72,36,18
+73,73,36,18
+74,74,37,18
+75,75,37,18
+76,76,38,19
+77,77,38,19
+78,78,39,19
+79,79,39,19
+80,80,40,20
+81,81,40,20
+82,82,41,20
+83,83,41,20
+84,84,42,21
+85,85,42,21
+86,86,43,21
+87,87,43,21
+88,88,44,22
+89,89,44,22
+90,90,45,22
+91,91,45,22
+92,92,46,23
+93,93,46,23
+94,94,47,23
+95,95,47,23
+96,96,48,24
+97,97,48,24
+98,98,49,24
+99,99,49,24
+100,100,50,25
+101,101,50,25
+102,102,51,25
+103,103,51,25
+104,104,52,26
+105,105,52,26
+106,106,53,26
+107,107,53,26
+108,108,54,27
+109,109,54,27
+110,110,55,27
+111,111,55,27
+112,112,56,28
+113,113,56,28
+114,114,57,28
+115,115,57,28
+116,116,58,29
+117,117,58,29
+118,118,59,29
+119,119,59,29
+120,120,60,30
+121,121,60,30
+122,122,61,30
+123,123,61,30
+124,124,62,31
+125,125,62,31
+126,126,63,31
+127,127,63,31
+128,128,64,32
+129,129,64,32
+130,130,65,32
+131,131,65,32
+132,132,66,33
+133,133,66,33
+134,134,67,33
+135,135,67,33
+136,136,68,34
+137,137,68,34
+138,138,69,34
+139,139,69,34
+140,140,70,35
+141,141,70,35
+142,142,71,35
+143,143,71,35
+144,144,72,36
+145,145,72,36
+146,146,73,36
+147,147,73,36
+148,148,74,37
+149,149,74,37
+150,150,75,37
+151,151,75,37
+152,152,76,38
+153,153,76,38
+154,154,77,38
+155,155,77,38
+156,156,78,39
+157,157,78,39
+158,158,79,39
+159,159,79,39
+160,160,80,40
+161,161,80,40
+162,162,81,40
+163,163,81,40
+164,164,82,41
+165,165,82,41
+166,166,83,41
+167,167,83,41
+168,168,84,42
+169,169,84,42
+170,170,85,42
+171,171,85,42
+172,172,86,43
+173,173,86,43
+174,174,87,43
+175,175,87,43
+176,176,88,44
+177,177,88,44
+178,178,89,44
+179,179,89,44
+180,180,90,45
+181,181,90,45
+182,182,91,45
+183,183,91,45
+184,184,92,46
+185,185,92,46
+186,186,93,46
+187,187,93,46
+188,188,94,47
+189,189,94,47
+190,190,95,47
+191,191,95,47
+192,192,96,48
+193,193,96,48
+194,194,97,48
+195,195,97,48
+196,196,98,49
+197,197,98,49
+198,198,99,49
+199,199,99,49
+200,200,100,50
+201,201,100,50
+202,202,101,50
+203,203,101,50
+204,204,102,51
+205,205,102,51
+206,206,103,51
+207,207,103,51
+208,208,104,52
+209,209,104,52
+210,210,105,52
+211,211,105,52
+212,212,106,53
+213,213,106,53
+214,214,107,53
+215,215,107,53
+216,216,108,54
+217,217,108,54
+218,218,109,54
+219,219,109,54
+220,220,110,55
+221,221,110,55
+222,222,111,55
+223,223,111,55
+224,224,112,56
+225,225,112,56
+226,226,113,56
+227,227,113,56
+228,228,114,57
+229,229,114,57
+230,230,115,57
+231,231,115,57
+232,232,116,58
+233,233,116,58
+234,234,117,58
+235,235,117,58
+236,236,118,59
+237,237,118,59
+238,238,119,59
+239,239,119,59
+240,240,120,60
+241,241,120,60
+242,242,121,60
+243,243,121,60
+244,244,122,61
+245,245,122,61
+246,246,123,61
+247,247,123,61
+248,248,124,62
+249,249,124,62
+250,250,125,62
+251,251,125,62
+252,252,126,63
+253,253,126,63
+254,254,127,63
+255,255,127,63
+256,256,128,64
+257,257,128,64
+258,258,129,64
+259,259,129,64
+260,260,130,65
+261,261,130,65
+262,262,131,65
+263,263,131,65
+264,264,132,66
+265,265,132,66
+266,266,133,66
+267,267,133,66
+268,268,134,67
+269,269,134,67
+270,270,135,67
+271,271,135,67
+272,272,136,68
+273,273,136,68
+274,274,137,68
+275,275,137,68
+276,276,138,69
+277,277,138,69
+278,278,139,69
+279,279,139,69
+280,280,140,70
+281,281,140,70
+282,282,141,70
+283,283,141,70
+284,284,142,71
+285,285,142,71
+286,286,143,71
+287,287,143,71
+288,288,144,72
+289,289,144,72
+290,290,145,72
+291,291,145,72
+292,292,146,73
+293,293,146,73
+294,294,147,73
+295,295,147,73
+296,296,148,74
+297,297,148,74
+298,298,149,74
+299,299,149,74
+300,300,150,75
+301,301,150,75
+302,302,151,75
+303,303,151,75
+304,304,152,76
+305,305,152,76
+306,306,153,76
+307,307,153,76
+308,308,154,77
+309,309,154,77
+310,310,155,77
+311,311,155,77
+312,312,156,78
+313,313,156,78
+314,314,157,78
+315,315,157,78
+316,316,158,79
+317,317,158,79
+318,318,159,79
+319,319,159,79
+320,320,160,80
+321,321,160,80
+322,322,161,80
+323,323,161,80
+324,324,162,81
+325,325,162,81
+326,326,163,81
+327,327,163,81
+328,328,164,82
+329,329,164,82
+330,330,165,82
+331,331,165,82
+332,332,166,83
+333,333,166,83
+334,334,167,83
+335,335,167,83
+336,336,168,84
+337,337,168,84
+338,338,169,84
+339,339,169,84
+340,340,170,85
+341,341,170,85
+342,342,171,85
+343,343,171,85
+344,344,172,86
+345,345,172,86
+346,346,173,86
+347,347,173,86
+348,348,174,87
+349,349,174,87
+350,350,175,87
+351,351,175,87
+352,352,176,88
+353,353,176,88
+354,354,177,88
+355,355,177,88
+356,356,178,89
+357,357,178,89
+358,358,179,89
+359,359,179,89
+360,360,180,90
+361,361,180,90
+362,362,181,90
+363,363,181,90
+364,364,182,91
+365,365,182,91
+366,366,183,91
+367,367,183,91
+368,368,184,92
+369,369,184,92
+370,370,185,92
+371,371,185,92
+372,372,186,93
+373,373,186,93
+374,374,187,93
+375,375,187,93
+376,376,188,94
+377,377,188,94
+378,378,189,94
+379,379,189,94
+380,380,190,95
+381,381,190,95
+382,382,191,95
+383,383,191,95
+384,384,192,96
+385,385,192,96
+386,386,193,96
+387,387,193,96
+388,388,194,97
+389,389,194,97
+390,390,195,97
+391,391,195,97
+392,392,196,98
+393,393,196,98
+394,394,197,98
+395,395,197,98
+396,396,198,99
+397,397,198,99
+398,398,199,99
+399,399,199,99
+400,400,200,100
+401,401,200,100
+402,402,201,100
+403,403,201,100
+404,404,202,101
+405,405,202,101
+406,406,203,101
+407,407,203,101
+408,408,204,102
+409,409,204,102
+410,410,205,102
+411,411,205,102
+412,412,206,103
+413,413,206,103
+414,414,207,103
+415,415,207,103
+416,416,208,104
+417,417,208,104
+418,418,209,104
+419,419,209,104
+420,420,210,105
+421,421,210,105
+422,422,211,105
+423,423,211,105
+424,424,212,106
+425,425,212,106
+426,426,213,106
+427,427,213,106
+428,428,214,107
+429,429,214,107
+430,430,215,107
+431,431,215,107
+432,432,216,108
+433,433,216,108
+434,434,217,108
+435,435,217,108
+436,436,218,109
+437,437,218,109
+438,438,219,109
+439,439,219,109
+440,440,220,110
+441,441,220,110
+442,442,221,110
+443,443,221,110
+444,444,222,111
+445,445,222,111
+446,446,223,111
+447,447,223,111
+448,448,224,112
+449,449,224,112
+450,450,225,112
+451,451,225,112
+452,452,226,113
+453,453,226,113
+454,454,227,113
+455,455,227,113
+456,456,228,114
+457,457,228,114
+458,458,229,114
+459,459,229,114
+460,460,230,115
+461,461,230,115
+462,462,231,115
+463,463,231,115
+464,464,232,116
+465,465,232,116
+466,466,233,116
+467,467,233,116
+468,468,234,117
+469,469,234,117
+470,470,235,117
+471,471,235,117
+472,472,236,118
+473,473,236,118
+474,474,237,118
+475,475,237,118
+476,476,238,119
+477,477,238,119
+478,478,239,119
+479,479,239,119
+480,480,240,120
+481,481,240,120
+482,482,241,120
+483,483,241,120
+484,484,242,121
+485,485,242,121
+486,486,243,121
+487,487,243,121
+488,488,244,122
+489,489,244,122
+490,490,245,122
+491,491,245,122
+492,492,246,123
+493,493,246,123
+494,494,247,123
+495,495,247,123
+496,496,248,124
+497,497,248,124
+498,498,249,124
+499,499,249,124
+500,500,250,125
+501,501,250,125
+502,502,251,125
+503,503,251,125
+504,504,252,126
+505,505,252,126
+506,506,253,126
+507,507,253,126
+508,508,254,127
+509,509,254,127
+510,510,255,127
+511,511,255,127
diff --git a/tests/expected/lscpu/lscpu-ia64-hpmatterhorn b/tests/expected/lscpu/lscpu-ia64-hpmatterhorn
new file mode 100644
index 0000000..0322622
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-ia64-hpmatterhorn
@@ -0,0 +1,29 @@
+CPU(s): 8
+Thread(s) per core: 1
+Core(s) per socket: 1
+Socket(s): 8
+NUMA node(s): 3
+Vendor ID: GenuineIntel
+CPU family: Itanium 2
+Model: 1
+CPU MHz: 1300.000000
+L1d cache: 16K
+L1i cache: 16K
+L2 cache: 256K
+L3 cache: 3072K
+NUMA node0 CPU(s): 4-7
+NUMA node1 CPU(s): 0-3
+NUMA node2 CPU(s):
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,1,,0,0,0,0
+1,1,1,1,,1,1,1,1
+2,2,2,1,,2,2,2,2
+3,3,3,1,,3,3,3,3
+4,4,4,0,,4,4,4,4
+5,5,5,0,,5,5,5,5
+6,6,6,0,,6,6,6,6
+7,7,7,0,,7,7,7,7
diff --git a/tests/expected/lscpu/lscpu-ia64-hprx1620 b/tests/expected/lscpu/lscpu-ia64-hprx1620
new file mode 100644
index 0000000..92aa907
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-ia64-hprx1620
@@ -0,0 +1,21 @@
+CPU(s): 2
+Thread(s) per core: 1
+Core(s) per socket: 1
+Socket(s): 2
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: Itanium 2
+Model: 2
+CPU MHz: 1599.000967
+L1d cache: 16K
+L1i cache: 16K
+L2 cache: 256K
+L3 cache: 3072K
+NUMA node0 CPU(s): 0,1
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,1,0,,1,1,1,1
diff --git a/tests/expected/lscpu/lscpu-ia64-pg0 b/tests/expected/lscpu/lscpu-ia64-pg0
new file mode 100644
index 0000000..50942cc
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-ia64-pg0
@@ -0,0 +1,37 @@
+CPU(s): 16
+Thread(s) per core: 1
+Core(s) per socket: 2
+Socket(s): 8
+NUMA node(s): 2
+Vendor ID: GenuineIntel
+CPU family: Itanium 2
+Model: 0
+CPU MHz: 1418.000227
+L1d cache: 16K
+L1i cache: 16K
+L2d cache: 256K
+L2i cache: 1024K
+L3 cache: 6144K
+NUMA node0 CPU(s): 0-7
+NUMA node1 CPU(s): 8-15
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2d,L2i,L3
+0,0,0,0,,0,0,0,,
+1,1,0,0,,1,1,1,,
+2,2,1,0,,2,2,2,,
+3,3,1,0,,3,3,3,,
+4,4,2,0,,4,4,4,,
+5,5,2,0,,5,5,5,,
+6,6,3,0,,6,6,6,,
+7,7,3,0,,7,7,7,,
+8,8,4,1,,8,8,8,,
+9,9,4,1,,9,9,9,,
+10,10,5,1,,10,10,10,,
+11,11,5,1,,11,11,11,,
+12,12,6,1,,12,12,12,,
+13,13,6,1,,13,13,13,,
+14,14,7,1,,14,14,14,,
+15,15,7,1,,15,15,15,,
diff --git a/tests/expected/lscpu/lscpu-ppc64-POWER7 b/tests/expected/lscpu/lscpu-ppc64-POWER7
new file mode 100644
index 0000000..0d6c5ba
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-ppc64-POWER7
@@ -0,0 +1,31 @@
+CPU(s): 16
+On-line CPU(s) list: 0-15
+Thread(s) per core: 4
+Core(s) per socket: 1
+Socket(s): 4
+NUMA node(s): 1
+Model: IBM,8233-E8B
+L1d cache: 32K
+L1i cache: 32K
+NUMA node0 CPU(s): 0-15
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i
+0,0,0,0,,0,0
+1,0,0,0,,0,0
+2,0,0,0,,0,0
+3,0,0,0,,0,0
+4,1,1,0,,1,1
+5,1,1,0,,1,1
+6,1,1,0,,1,1
+7,1,1,0,,1,1
+8,2,2,0,,2,2
+9,2,2,0,,2,2
+10,2,2,0,,2,2
+11,2,2,0,,2,2
+12,3,3,0,,3,3
+13,3,3,0,,3,3
+14,3,3,0,,3,3
+15,3,3,0,,3,3
diff --git a/tests/expected/lscpu/lscpu-s390-kvm b/tests/expected/lscpu/lscpu-s390-kvm
new file mode 100644
index 0000000..1aa42f9
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-s390-kvm
@@ -0,0 +1,21 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 3
+On-line CPU(s) list: 0-2
+Thread(s) per core: 1
+Core(s) per socket: 1
+Socket(s) per book: 1
+Book(s): 3
+Vendor ID: IBM/S390
+BogoMIPS: 14367.00
+Hypervisor: KVM/Linux
+Hypervisor vendor: KVM
+Virtualization type: full
+Dispatching mode: horizontal
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,0,0,
+1,1,1,
+2,2,2,
diff --git a/tests/expected/lscpu/lscpu-s390-lpar b/tests/expected/lscpu/lscpu-s390-lpar
new file mode 100644
index 0000000..0799ab9
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-s390-lpar
@@ -0,0 +1,36 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 20
+On-line CPU(s) list: 1-5,8-19
+Off-line CPU(s) list: 0,6,7
+Thread(s) per core: 1
+Core(s) per socket: 4
+Socket(s) per book: 6
+Book(s): 4
+Vendor ID: IBM/S390
+BogoMIPS: 14367.00
+Hypervisor: PR/SM
+Hypervisor vendor: IBM
+Virtualization type: full
+Dispatching mode: vertical
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+1,0,0,
+2,1,0,
+3,2,1,
+4,3,1,
+5,4,1,
+8,5,2,
+9,6,2,
+10,7,2,
+11,8,3,
+12,9,3,
+13,10,3,
+14,11,3,
+15,12,4,
+16,13,5,
+17,14,5,
+18,15,5,
+19,16,6,
diff --git a/tests/expected/lscpu/lscpu-s390-zvm b/tests/expected/lscpu/lscpu-s390-zvm
new file mode 100644
index 0000000..04dcf76
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-s390-zvm
@@ -0,0 +1,22 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 4
+On-line CPU(s) list: 0-3
+Thread(s) per core: 1
+Core(s) per socket: 1
+Socket(s) per book: 1
+Book(s): 4
+Vendor ID: IBM/S390
+BogoMIPS: 14367.00
+Hypervisor: z/VM 6.1.0
+Hypervisor vendor: IBM
+Virtualization type: full
+Dispatching mode: horizontal
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,0,0,
+1,1,1,
+2,2,2,
+3,3,3,
diff --git a/tests/expected/lscpu/lscpu-sparc64-UltraSparc-T1 b/tests/expected/lscpu/lscpu-sparc64-UltraSparc-T1
new file mode 100644
index 0000000..639a7de
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-sparc64-UltraSparc-T1
@@ -0,0 +1,38 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 32
+On-line CPU(s) list: 0-23
+Off-line CPU(s) list: 24-31
+Thread(s) per core: 4
+Core(s) per socket: 1
+Socket(s): 6
+NUMA node(s): 1
+NUMA node0 CPU(s): 0-35
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,0,0,0
+1,0,0,0
+2,0,0,0
+3,0,0,0
+4,1,1,0
+5,1,1,0
+6,1,1,0
+7,1,1,0
+8,2,2,0
+9,2,2,0
+10,2,2,0
+11,2,2,0
+12,3,3,0
+13,3,3,0
+14,3,3,0
+15,3,3,0
+16,4,4,0
+17,4,4,0
+18,4,4,0
+19,4,4,0
+20,5,5,0
+21,5,5,0
+22,5,5,0
+23,5,5,0
diff --git a/tests/expected/lscpu/lscpu-x86_64-64cpu b/tests/expected/lscpu/lscpu-x86_64-64cpu
new file mode 100644
index 0000000..18630e3
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-64cpu
@@ -0,0 +1,88 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 64
+On-line CPU(s) list: 0-63
+Thread(s) per core: 2
+Core(s) per socket: 8
+Socket(s): 4
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 46
+Stepping: 6
+CPU MHz: 1064.000
+BogoMIPS: 3989.44
+Virtualization: VT-x
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 256K
+L3 cache: 18432K
+NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,1,,,1,1,1,1
+2,2,2,0,,2,2,2,2
+3,3,3,,,3,3,3,3
+4,4,0,0,,4,4,4,0
+5,5,1,,,5,5,5,1
+6,6,2,0,,6,6,6,2
+7,7,3,,,7,7,7,3
+8,8,0,0,,8,8,8,0
+9,9,1,,,9,9,9,1
+10,10,2,0,,10,10,10,2
+11,11,3,,,11,11,11,3
+12,12,0,0,,12,12,12,0
+13,13,1,,,13,13,13,1
+14,14,2,0,,14,14,14,2
+15,15,3,,,15,15,15,3
+16,16,0,0,,16,16,16,0
+17,17,1,,,17,17,17,1
+18,18,2,0,,18,18,18,2
+19,19,3,,,19,19,19,3
+20,20,0,0,,20,20,20,0
+21,21,1,,,21,21,21,1
+22,22,2,0,,22,22,22,2
+23,23,3,,,23,23,23,3
+24,24,0,0,,24,24,24,0
+25,25,1,,,25,25,25,1
+26,26,2,0,,26,26,26,2
+27,27,3,,,27,27,27,3
+28,28,0,0,,28,28,28,0
+29,29,1,,,29,29,29,1
+30,30,2,0,,30,30,30,2
+31,31,3,,,31,31,31,3
+32,0,0,0,,0,0,0,0
+33,1,1,,,1,1,1,1
+34,2,2,0,,2,2,2,2
+35,3,3,,,3,3,3,3
+36,4,0,0,,4,4,4,0
+37,5,1,,,5,5,5,1
+38,6,2,0,,6,6,6,2
+39,7,3,,,7,7,7,3
+40,8,0,0,,8,8,8,0
+41,9,1,,,9,9,9,1
+42,10,2,0,,10,10,10,2
+43,11,3,,,11,11,11,3
+44,12,0,0,,12,12,12,0
+45,13,1,,,13,13,13,1
+46,14,2,0,,14,14,14,2
+47,15,3,,,15,15,15,3
+48,16,0,0,,16,16,16,0
+49,17,1,,,17,17,17,1
+50,18,2,0,,18,18,18,2
+51,19,3,,,19,19,19,3
+52,20,0,0,,20,20,20,0
+53,21,1,,,21,21,21,1
+54,22,2,0,,22,22,22,2
+55,23,3,,,23,23,23,3
+56,24,0,0,,24,24,24,0
+57,25,1,,,25,25,25,1
+58,26,2,0,,26,26,26,2
+59,27,3,,,27,27,27,3
+60,28,0,0,,28,28,28,0
+61,29,1,,,29,29,29,1
+62,30,2,0,,30,30,30,2
+63,31,3,,,31,31,31,3
diff --git a/tests/expected/lscpu/lscpu-x86_64-dell_e4310 b/tests/expected/lscpu/lscpu-x86_64-dell_e4310
new file mode 100644
index 0000000..ae9e0b4
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-dell_e4310
@@ -0,0 +1,28 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 4
+On-line CPU(s) list: 0-3
+Thread(s) per core: 2
+Core(s) per socket: 2
+Socket(s): 1
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 37
+Stepping: 5
+CPU MHz: 1199.000
+BogoMIPS: 5319.97
+Virtualization: VT-x
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 256K
+L3 cache: 3072K
+NUMA node0 CPU(s): 0-3
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,0,0,,1,1,1,0
+2,0,0,0,,0,0,0,0
+3,1,0,0,,1,1,1,0
diff --git a/tests/expected/lscpu/lscpu-x86_64-dell_poweredge1950 b/tests/expected/lscpu/lscpu-x86_64-dell_poweredge1950
new file mode 100644
index 0000000..64c5a9c
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-dell_poweredge1950
@@ -0,0 +1,23 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 8
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 15
+Stepping: 7
+CPU MHz: 2327.526
+BogoMIPS: 4655.08
+NUMA node0 CPU(s): 0-7
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node
+0,,,0
+1,,,0
+2,,,0
+3,,,0
+4,,,0
+5,,,0
+6,,,0
+7,,,0
diff --git a/tests/expected/lscpu/lscpu-x86_64-dell_poweredgeR610 b/tests/expected/lscpu/lscpu-x86_64-dell_poweredgeR610
new file mode 100644
index 0000000..bdd839f
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-dell_poweredgeR610
@@ -0,0 +1,40 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 16
+Thread(s) per core: 2
+Core(s) per socket: 4
+Socket(s): 2
+NUMA node(s): 2
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 26
+Stepping: 5
+CPU MHz: 2261.056
+BogoMIPS: 4522.04
+Virtualization: VT-x
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 256K
+L3 cache: 8192K
+NUMA node0 CPU(s): 0,2,4,6,8,10,12,14
+NUMA node1 CPU(s): 1,3,5,7,9,11,13,15
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,1,1,,1,1,1,1
+2,2,0,0,,2,2,2,0
+3,3,1,1,,3,3,3,1
+4,4,0,0,,4,4,4,0
+5,5,1,1,,5,5,5,1
+6,6,0,0,,6,6,6,0
+7,7,1,1,,7,7,7,1
+8,0,0,0,,0,0,0,0
+9,1,1,1,,1,1,1,1
+10,2,0,0,,2,2,2,0
+11,3,1,1,,3,3,3,1
+12,4,0,0,,4,4,4,0
+13,5,1,1,,5,5,5,1
+14,6,0,0,,6,6,6,0
+15,7,1,1,,7,7,7,1
diff --git a/tests/expected/lscpu/lscpu-x86_64-dellr710 b/tests/expected/lscpu/lscpu-x86_64-dellr710
new file mode 100644
index 0000000..3b52c6d
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-dellr710
@@ -0,0 +1,40 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 16
+Thread(s) per core: 2
+Core(s) per socket: 4
+Socket(s): 2
+NUMA node(s): 2
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 26
+Stepping: 5
+CPU MHz: 2527.073
+BogoMIPS: 5053.32
+Virtualization: VT-x
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 256K
+L3 cache: 8192K
+NUMA node0 CPU(s): 0,2,4,6,8,10,12,14
+NUMA node1 CPU(s): 1,3,5,7,9,11,13,15
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,1,1,,1,1,1,1
+2,2,0,0,,2,2,2,0
+3,3,1,1,,3,3,3,1
+4,4,0,0,,4,4,4,0
+5,5,1,1,,5,5,5,1
+6,6,0,0,,6,6,6,0
+7,7,1,1,,7,7,7,1
+8,0,0,0,,0,0,0,0
+9,1,1,1,,1,1,1,1
+10,2,0,0,,2,2,2,0
+11,3,1,1,,3,3,3,1
+12,4,0,0,,4,4,4,0
+13,5,1,1,,5,5,5,1
+14,6,0,0,,6,6,6,0
+15,7,1,1,,7,7,7,1
diff --git a/tests/expected/lscpu/lscpu-x86_64-el5xen b/tests/expected/lscpu/lscpu-x86_64-el5xen
new file mode 100644
index 0000000..454ca35
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-el5xen
@@ -0,0 +1,30 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 8
+Thread(s) per core: 1
+Core(s) per socket: 1
+Socket(s): 8
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 26
+Stepping: 5
+CPU MHz: 2393.998
+BogoMIPS: 5986.29
+Hypervisor vendor: Xen
+Virtualization type: para
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 256K
+L3 cache: 8192K
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,,,0,0,0,0
+1,1,1,,,0,0,0,0
+2,2,2,,,1,1,1,0
+3,3,3,,,1,1,1,0
+4,4,4,,,2,2,2,0
+5,5,5,,,2,2,2,0
+6,6,6,,,3,3,3,0
+7,7,7,,,3,3,3,0
diff --git a/tests/expected/lscpu/lscpu-x86_64-hpdl585 b/tests/expected/lscpu/lscpu-x86_64-hpdl585
new file mode 100644
index 0000000..347ee62
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-hpdl585
@@ -0,0 +1,42 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 16
+Thread(s) per core: 1
+Core(s) per socket: 4
+Socket(s): 4
+NUMA node(s): 4
+Vendor ID: AuthenticAMD
+CPU family: 16
+Model: 2
+Stepping: 3
+CPU MHz: 2210.188
+BogoMIPS: 4420.50
+Virtualization: AMD-V
+L1d cache: 512K
+L1i cache: 512K
+L2 cache: 512K
+L3 cache: 2048K
+NUMA node0 CPU(s): 0,4,8,12
+NUMA node1 CPU(s): 1,5,9,13
+NUMA node2 CPU(s): 2,6,10,14
+NUMA node3 CPU(s): 3,7,11,15
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
+0,0,0,0,,0,0,0,0
+1,1,1,1,,1,1,1,1
+2,2,2,2,,2,2,2,2
+3,3,3,3,,3,3,3,3
+4,4,0,0,,4,4,4,4
+5,5,1,1,,5,5,5,5
+6,6,2,2,,6,6,6,6
+7,7,3,3,,7,7,7,7
+8,8,0,0,,8,8,8,8
+9,9,1,1,,9,9,9,9
+10,10,2,2,,10,10,10,10
+11,11,3,3,,11,11,11,11
+12,12,0,0,,12,12,12,12
+13,13,1,1,,13,13,13,13
+14,14,2,2,,14,14,14,14
+15,15,3,3,,15,15,15,15
diff --git a/tests/expected/lscpu/lscpu-x86_64-ibme326m b/tests/expected/lscpu/lscpu-x86_64-ibme326m
new file mode 100644
index 0000000..8e5e375
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-ibme326m
@@ -0,0 +1,23 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 2
+Thread(s) per core: 1
+Core(s) per socket: 2
+Socket(s): 1
+NUMA node(s): 1
+Vendor ID: AuthenticAMD
+CPU family: 15
+Model: 33
+Stepping: 2
+CPU MHz: 1995.058
+BogoMIPS: 3989.41
+L1d cache: 1024K
+L1i cache: 1024K
+L2 cache: 1024K
+NUMA node0 CPU(s): 0,1
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2
+0,0,0,0,,0,0,0
+1,1,0,0,,1,1,1
diff --git a/tests/expected/lscpu/lscpu-x86_64-necem14 b/tests/expected/lscpu/lscpu-x86_64-necem14
new file mode 100644
index 0000000..91d626e
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-necem14
@@ -0,0 +1,22 @@
+CPU op-mode(s): 32-bit, 64-bit
+CPU(s): 2
+Thread(s) per core: 2
+Core(s) per socket: 1
+Socket(s): 1
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: 15
+Model: 4
+Stepping: 3
+CPU MHz: 3790.599
+BogoMIPS: 7579.94
+L1d cache: 16K
+L2 cache: 2048K
+NUMA node0 CPU(s): 0,1
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L2
+0,0,0,0,,0,0
+1,0,0,0,,0,0
diff --git a/tests/expected/lscpu/lscpu-x86_64-xenfull b/tests/expected/lscpu/lscpu-x86_64-xenfull
new file mode 100644
index 0000000..1a5c46a
--- /dev/null
+++ b/tests/expected/lscpu/lscpu-x86_64-xenfull
@@ -0,0 +1,22 @@
+CPU(s): 2
+Thread(s) per core: 1
+Core(s) per socket: 1
+CPU socket(s): 2
+NUMA node(s): 1
+Vendor ID: GenuineIntel
+CPU family: 6
+Model: 23
+Stepping: 6
+CPU MHz: 2493.900
+Hypervisor vendor: Xen
+Virtualization type: full
+L1d cache: 32K
+L1i cache: 32K
+L2 cache: 6144K
+
+# The following is the parsable format, which can be fed to other
+# programs. Each different item in every column has an unique ID
+# starting from zero.
+# CPU,Core,Socket,Node,,L1d,L1i,L2
+0,0,0,0,,0,0,0
+1,1,1,0,,1,1,1
diff --git a/tests/expected/md5/md5 b/tests/expected/md5/md5
new file mode 100644
index 0000000..6ca300b
--- /dev/null
+++ b/tests/expected/md5/md5
@@ -0,0 +1,7 @@
+d41d8cd98f00b204e9800998ecf8427e -
+900150983cd24fb0d6963f7d28e17f72 -
+5eb6d580e5f68fde65c3778afb8826ff -
+bd1e13bdaab82581d4dc299eb9a3da0f -
+d81ee4f567972a18f9326540b5d8aeaf -
+9561bd208c0041c673080ed744919b85 -
+d98d58d5562ca4dd47f0f0fe86b2d48f -
diff --git a/tests/expected/minix/fsck b/tests/expected/minix/fsck
new file mode 100644
index 0000000..84de725
--- /dev/null
+++ b/tests/expected/minix/fsck
@@ -0,0 +1,8 @@
+create minix fs
+1728 inodes
+5120 blocks
+Firstdatazone=58 (58)
+Zonesize=1024
+Maxsize=268966912
+
+fsck minix fs
diff --git a/tests/expected/minix/mkfs b/tests/expected/minix/mkfs
new file mode 100644
index 0000000..592d5dc
--- /dev/null
+++ b/tests/expected/minix/mkfs
@@ -0,0 +1,10 @@
+create minix fs
+1728 inodes
+5120 blocks
+Firstdatazone=58 (58)
+Zonesize=1024
+Maxsize=268966912
+
+create mountpoint dir
+mount the filesystem
+umount the image
diff --git a/tests/expected/misc/strtosize b/tests/expected/misc/strtosize
new file mode 100644
index 0000000..94fd69a
--- /dev/null
+++ b/tests/expected/misc/strtosize
@@ -0,0 +1,30 @@
+test_strutils: invalid size '-1' value
+ 0 : 0 : 0B : 0 B
+ 1 : 1 : 1B : 1 B
+ 123 : 123 : 123B : 123 B
+ 18446744073709551615 : 18446744073709551615 : 16E : 16 EiB
+ 1K : 1024 : 1K : 1 KiB
+ 1KiB : 1024 : 1K : 1 KiB
+ 1M : 1048576 : 1M : 1 MiB
+ 1MiB : 1048576 : 1M : 1 MiB
+ 1G : 1073741824 : 1G : 1 GiB
+ 1GiB : 1073741824 : 1G : 1 GiB
+ 1T : 1099511627776 : 1T : 1 TiB
+ 1TiB : 1099511627776 : 1T : 1 TiB
+ 1P : 1125899906842624 : 1P : 1 PiB
+ 1PiB : 1125899906842624 : 1P : 1 PiB
+ 1E : 1152921504606846976 : 1E : 1 EiB
+ 1EiB : 1152921504606846976 : 1E : 1 EiB
+ 1KB : 1000 : 1000B : 1000 B
+ 1MB : 1000000 : 976.6K : 976.6 KiB
+ 1GB : 1000000000 : 953.7M : 953.7 MiB
+ 1TB : 1000000000000 : 931.3G : 931.3 GiB
+ 1PB : 1000000000000000 : 909.5T : 909.5 TiB
+ 1EB : 1000000000000000000 : 888.2P : 888.2 PiB
+test_strutils: invalid size '' value
+test_strutils: invalid size ' ' value
+ 1 : 1 : 1B : 1 B
+test_strutils: invalid size '1 ' value
+ 0x0a : 10 : 10B : 10 B
+ 0xff00 : 65280 : 63.8K : 63.8 KiB
+ 0x80000000 : 2147483648 : 2G : 2 GiB
diff --git a/tests/expected/mount/devname b/tests/expected/mount/devname
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/devname
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/encryption b/tests/expected/mount/encryption
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/encryption
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-broken b/tests/expected/mount/fstab-broken
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-broken
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-broken-mount b/tests/expected/mount/fstab-broken-mount
new file mode 100644
index 0000000..d86bac9
--- /dev/null
+++ b/tests/expected/mount/fstab-broken-mount
@@ -0,0 +1 @@
+OK
diff --git a/tests/expected/mount/fstab-broken-mount-all b/tests/expected/mount/fstab-broken-mount-all
new file mode 100644
index 0000000..d86bac9
--- /dev/null
+++ b/tests/expected/mount/fstab-broken-mount-all
@@ -0,0 +1 @@
+OK
diff --git a/tests/expected/mount/fstab-devname b/tests/expected/mount/fstab-devname
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-devname
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-devname2label b/tests/expected/mount/fstab-devname2label
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-devname2label
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-devname2uuid b/tests/expected/mount/fstab-devname2uuid
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-devname2uuid
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-label b/tests/expected/mount/fstab-label
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-label
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-label2devname b/tests/expected/mount/fstab-label2devname
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-label2devname
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-label2uuid b/tests/expected/mount/fstab-label2uuid
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-label2uuid
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-none b/tests/expected/mount/fstab-none
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-none
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-symlink b/tests/expected/mount/fstab-symlink
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-symlink
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-uuid b/tests/expected/mount/fstab-uuid
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-uuid
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-uuid2devname b/tests/expected/mount/fstab-uuid2devname
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-uuid2devname
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/fstab-uuid2label b/tests/expected/mount/fstab-uuid2label
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/fstab-uuid2label
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/label b/tests/expected/mount/label
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/label
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/move b/tests/expected/mount/move
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/move
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/noncanonical b/tests/expected/mount/noncanonical
new file mode 100644
index 0000000..01c3a4f
--- /dev/null
+++ b/tests/expected/mount/noncanonical
@@ -0,0 +1,2 @@
+mount: spec: "//etc"
+mount: spec: "/etc"
diff --git a/tests/expected/mount/paths b/tests/expected/mount/paths
new file mode 100644
index 0000000..bec6697
--- /dev/null
+++ b/tests/expected/mount/paths
@@ -0,0 +1,11 @@
+mount: fstab path: "/etc/fstab"
+mount: mtab path: "/etc/mtab"
+mount: lock path: "/etc/mtab~"
+mount: temp path: "/etc/mtab.tmp"
+mount: UID: 0
+mount: eUID: 0
+mount: spec: "/dev/dummy"
+mount: node: "/mnt"
+mount: types: "(null)"
+mount: opts: "(null)"
+/dev/dummy on /mnt type unknown (rw)
diff --git a/tests/expected/mount/regfile b/tests/expected/mount/regfile
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/regfile
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/remount b/tests/expected/mount/remount
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/remount
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/rlimit b/tests/expected/mount/rlimit
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/rlimit
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/rlimit-mount b/tests/expected/mount/rlimit-mount
new file mode 100644
index 0000000..85e2e12
--- /dev/null
+++ b/tests/expected/mount/rlimit-mount
@@ -0,0 +1 @@
+OK: mtab unmodified by mount
diff --git a/tests/expected/mount/rlimit-umount b/tests/expected/mount/rlimit-umount
new file mode 100644
index 0000000..193a8ee
--- /dev/null
+++ b/tests/expected/mount/rlimit-umount
@@ -0,0 +1 @@
+OK: mtab unmodified by umount
diff --git a/tests/expected/mount/shared-subtree b/tests/expected/mount/shared-subtree
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/shared-subtree
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/mount/shared-subtree-make-private b/tests/expected/mount/shared-subtree-make-private
new file mode 100644
index 0000000..39cdd0d
--- /dev/null
+++ b/tests/expected/mount/shared-subtree-make-private
@@ -0,0 +1 @@
+-
diff --git a/tests/expected/mount/shared-subtree-make-shared b/tests/expected/mount/shared-subtree-make-shared
new file mode 100644
index 0000000..8a205e8
--- /dev/null
+++ b/tests/expected/mount/shared-subtree-make-shared
@@ -0,0 +1 @@
+shared
diff --git a/tests/expected/mount/shared-subtree-make-unbindable b/tests/expected/mount/shared-subtree-make-unbindable
new file mode 100644
index 0000000..376cfac
--- /dev/null
+++ b/tests/expected/mount/shared-subtree-make-unbindable
@@ -0,0 +1 @@
+unbindable
diff --git a/tests/expected/mount/special b/tests/expected/mount/special
new file mode 100644
index 0000000..99997d3
--- /dev/null
+++ b/tests/expected/mount/special
@@ -0,0 +1 @@
+/sbin/mount.mytest called with "/foo /bar -o rw"
diff --git a/tests/expected/mount/uuid b/tests/expected/mount/uuid
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/mount/uuid
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/namei/logic b/tests/expected/namei/logic
new file mode 100644
index 0000000..9632db0
--- /dev/null
+++ b/tests/expected/namei/logic
@@ -0,0 +1,13 @@
+f: namei1/namei2/a
+ d namei1
+ d namei2
+ - a
+f: namei1/namei2/b
+ d namei1
+ d namei2
+ - b
+f: namei1/namei2/a/b
+ d namei1
+ d namei2
+ - a
+b - No such file or directory
diff --git a/tests/expected/partx/partx-bsd b/tests/expected/partx/partx-bsd
new file mode 100644
index 0000000..15568c4
--- /dev/null
+++ b/tests/expected/partx/partx-bsd
@@ -0,0 +1,3 @@
+NR START END SECTORS SIZE NAME UUID
+ 1 7936 12799 4864 2.4M
+ 2 12544 16127 3584 1.8M
diff --git a/tests/expected/partx/partx-dos+bsd b/tests/expected/partx/partx-dos+bsd
new file mode 100644
index 0000000..75cdfe8
--- /dev/null
+++ b/tests/expected/partx/partx-dos+bsd
@@ -0,0 +1,5 @@
+NR START END SECTORS SIZE NAME UUID
+ 1 32 7679 7648 3.8M
+ 2 7680 16383 8704 4.3M
+ 5 7936 12799 4864 2.4M
+ 6 12544 16127 3584 1.8M
diff --git a/tests/expected/partx/partx-gpt b/tests/expected/partx/partx-gpt
new file mode 100644
index 0000000..c941f36
--- /dev/null
+++ b/tests/expected/partx/partx-gpt
@@ -0,0 +1,6 @@
+NR START END SECTORS SIZE NAME UUID
+ 1 34 2047 2014 1007K ThisIsName 1dcf10bc-637e-4c52-8203-087ae10a820b
+ 2 2048 4095 2048 1M ThisIsOtherName a1d03a96-7238-46c6-bbb3-789cbe173ec7
+ 3 4096 6143 2048 1M primary a7101b6c-468c-47df-aff6-cd444d12af61
+ 4 6144 8191 2048 1M primary afc4950a-f0f1-4add-802c-5957133486d1
+ 5 8192 10239 2048 1M primary 0db0a787-c16b-4886-af3a-fbb97299677c
diff --git a/tests/expected/partx/partx-sgi b/tests/expected/partx/partx-sgi
new file mode 100644
index 0000000..ba357e0
--- /dev/null
+++ b/tests/expected/partx/partx-sgi
@@ -0,0 +1,3 @@
+NR START END SECTORS SIZE NAME UUID
+ 1 63 1606499 1606437 784.4M
+ 2 1606500 32129999 30523500 14.6G
diff --git a/tests/expected/partx/partx-sun b/tests/expected/partx/partx-sun
new file mode 100644
index 0000000..e69fdb1
--- /dev/null
+++ b/tests/expected/partx/partx-sun
@@ -0,0 +1,3 @@
+NR START END SECTORS SIZE NAME UUID
+ 1 0 87379 87380 42.7M
+ 2 87380 131069 43690 21.3M
diff --git a/tests/expected/paths/built-in b/tests/expected/paths/built-in
new file mode 100644
index 0000000..38356ba
--- /dev/null
+++ b/tests/expected/paths/built-in
@@ -0,0 +1,35 @@
+ _PATH_DEFPATH /usr/local/bin:/bin:/usr/bin
+ _PATH_DEFPATH_ROOT /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+ _PATH_DEV_TTY /dev/tty
+ _PATH_DEV_LOOP /dev/loop
+ _PATH_SECURETTY /etc/securetty
+ _PATH_WTMPLOCK /etc/wtmplock
+ _PATH_HUSHLOGIN .hushlogin
+ _PATH_MAILDIR /var/mail
+ _PATH_MOTDFILE /etc/motd
+ _PATH_NOLOGIN /etc/nologin
+ _PATH_LOGIN /bin/login
+ _PATH_INITTAB /etc/inittab
+ _PATH_RC /etc/rc
+ _PATH_REBOOT /sbin/reboot
+ _PATH_SINGLE /etc/singleboot
+ _PATH_SHUTDOWN_CONF /etc/shutdown.conf
+ _PATH_SECURE /etc/securesingle
+ _PATH_USERTTY /etc/usertty
+ _PATH_UMOUNT /bin/umount
+ _PATH_PASSWD /etc/passwd
+ _PATH_GSHADOW /etc/gshadow
+ _PATH_GROUP /etc/group
+ _PATH_SHADOW_PASSWD /etc/shadow
+ _PATH_WORDS /usr/share/dict/words
+ _PATH_WORDS_ALT /usr/share/dict/web2
+ _PATH_UMOUNT /bin/umount
+ _PATH_FILESYSTEMS /etc/filesystems
+ _PATH_PROC_SWAPS /proc/swaps
+_PATH_PROC_FILESYSTEMS /proc/filesystems
+ _PATH_MOUNTED /etc/mtab
+ _PATH_MNTTAB /etc/fstab
+ _PATH_MOUNTED_LOCK /etc/mtab~
+ _PATH_MOUNTED_TMP /etc/mtab.tmp
+ _PATH_DEV_BYLABEL /dev/disk/by-label
+ _PATH_DEV_BYUUID /dev/disk/by-uuid
diff --git a/tests/expected/schedutils/cpuset b/tests/expected/schedutils/cpuset
new file mode 100644
index 0000000..10e1760
--- /dev/null
+++ b/tests/expected/schedutils/cpuset
@@ -0,0 +1,24 @@
+masks:
+0x00000001 = 1 [0]
+0x00000002 = 2 [1]
+0x00000003 = 3 [0,1]
+0x00000004 = 4 [2]
+0x00000005 = 5 [0,2]
+0x00000006 = 6 [1,2]
+0x00000007 = 7 [0-2]
+0x00000008 = 8 [3]
+0x00000009 = 9 [0,3]
+0x00005555 = 5555 [0,2,4,6,8,10,12,14]
+0x00007777 = 7777 [0-2,4-6,8-10,12-14]
+strings:
+0 = 1 [0]
+1 = 2 [1]
+0,1 = 3 [0,1]
+2 = 4 [2]
+0,2 = 5 [0,2]
+1,2 = 6 [1,2]
+0-2 = 7 [0-2]
+3 = 8 [3]
+0,3 = 9 [0,3]
+0,2,4,6,8,10,12,14 = 5555 [0,2,4,6,8,10,12,14]
+0-2,4-6,8-10,12-14 = 7777 [0-2,4-6,8-10,12-14]
diff --git a/tests/expected/script/race b/tests/expected/script/race
new file mode 100644
index 0000000..83b33d2
--- /dev/null
+++ b/tests/expected/script/race
@@ -0,0 +1 @@
+1000
diff --git a/tests/expected/swapon/devname b/tests/expected/swapon/devname
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/swapon/devname
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/swapon/fixpgsz b/tests/expected/swapon/fixpgsz
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/swapon/fixpgsz
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/swapon/fixsig b/tests/expected/swapon/fixsig
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/swapon/fixsig
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/swapon/label b/tests/expected/swapon/label
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/swapon/label
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/swapon/uuid b/tests/expected/swapon/uuid
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/swapon/uuid
@@ -0,0 +1 @@
+Success
diff --git a/tests/functions.sh b/tests/functions.sh
new file mode 100644
index 0000000..8293539
--- /dev/null
+++ b/tests/functions.sh
@@ -0,0 +1,470 @@
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+
+function ts_abspath {
+ cd $1
+ pwd
+}
+
+function ts_canonicalize {
+ P="$1"
+ C=$(readlink -f $P)
+
+ if [ -n "$C" ]; then
+ echo "$C"
+ else
+ echo "$P"
+ fi
+}
+
+function ts_skip_subtest {
+ echo " IGNORE ($1)"
+}
+
+function ts_skip {
+ ts_skip_subtest "$1"
+ if [ -n "$2" -a -b "$2" ]; then
+ ts_device_deinit "$2"
+ fi
+ exit 0
+}
+
+function ts_skip_nonroot {
+ if [ $UID -ne 0 ]; then
+ ts_skip "not root permissions"
+ fi
+}
+
+function ts_failed_subtest {
+ if [ x"$1" == x"" ]; then
+ echo " FAILED ($TS_NS)"
+ else
+ echo " FAILED ($1)"
+ fi
+}
+
+function ts_failed {
+ ts_failed_subtest "$1"
+ exit 1
+}
+
+function ts_ok_subtest {
+ if [ x"$1" == x"" ]; then
+ echo " OK"
+ else
+ echo " OK ($1)"
+ fi
+}
+
+function ts_ok {
+ ts_ok_subtest "$1"
+ exit 0
+}
+
+function ts_log {
+ echo "$1" >> $TS_OUTPUT
+ [ "$TS_VERBOSE" == "yes" ] && echo "$1"
+}
+
+function ts_has_option {
+ NAME="$1"
+ ALL="$2"
+ echo -n $ALL | sed 's/ //g' | awk 'BEGIN { FS="="; RS="--" } /('$NAME'$|'$NAME'=)/ { print "yes" }'
+}
+
+function ts_option_argument {
+ NAME="$1"
+ ALL="$2"
+ echo -n $ALL | sed 's/ //g' | awk 'BEGIN { FS="="; RS="--" } /'$NAME'=/ { print $2 }'
+}
+
+function ts_init_core_env {
+ TS_NS="$TS_COMPONENT/$TS_TESTNAME"
+ TS_OUTPUT="$TS_OUTDIR/$TS_TESTNAME"
+ TS_VGDUMP="$TS_OUTDIR/$TS_TESTNAME.vgdump"
+ TS_DIFF="$TS_DIFFDIR/$TS_TESTNAME"
+ TS_EXPECTED="$TS_TOPDIR/expected/$TS_NS"
+ TS_MOUNTPOINT="$TS_OUTDIR/${TS_TESTNAME}-mnt"
+}
+
+function ts_init_core_subtest_env {
+ TS_NS="$TS_COMPONENT/$TS_TESTNAME-$TS_SUBNAME"
+ TS_OUTPUT="$TS_OUTDIR/$TS_TESTNAME-$TS_SUBNAME"
+ TS_VGDUMP="$TS_OUTDIR/$TS_TESTNAME-$TS_SUBNAME.vgdump"
+ TS_DIFF="$TS_DIFFDIR/$TS_TESTNAME-$TS_SUBNAME"
+ TS_EXPECTED="$TS_TOPDIR/expected/$TS_NS"
+ TS_MOUNTPOINT="$TS_OUTDIR/${TS_TESTNAME}-${TS_SUBNAME}-mnt"
+
+ rm -f $TS_OUTPUT $TS_VGDUMP
+ [ -d "$TS_OUTDIR" ] || mkdir -p "$TS_OUTDIR"
+
+ touch $TS_OUTPUT
+ [ -n "$TS_VALGRIND_CMD" ] && touch $TS_VGDUMP
+}
+
+function ts_init_env {
+ local mydir=$(ts_abspath $(dirname $0))
+
+ LANG="POSIX"
+ LANGUAGE="POSIX"
+ LC_ALL="POSIX"
+ CHARSET="UTF-8"
+
+ export LANG LANGUAGE LC_ALL CHARSET
+
+ mydir=$(ts_canonicalize "$mydir")
+
+ # automake directories
+ top_srcdir=$(ts_option_argument "srcdir" "$*")
+ top_builddir=$(ts_option_argument "builddir" "$*")
+
+ # where is this script
+ TS_TOPDIR=$(ts_abspath $mydir/../../)
+
+ # default
+ if [ -z "$top_srcdir" ]; then
+ top_srcdir="$TS_TOPDIR/.."
+ fi
+ if [ -z "$top_builddir" ]; then
+ top_builddir="$TS_TOPDIR/.."
+ fi
+
+ top_srcdir=$(ts_abspath $top_srcdir)
+ top_builddir=$(ts_abspath $top_builddir)
+
+ TS_SCRIPT="$mydir/$(basename $0)"
+ TS_SUBDIR=$(dirname $TS_SCRIPT)
+ TS_TESTNAME=$(basename $TS_SCRIPT)
+ TS_COMPONENT=$(basename $TS_SUBDIR)
+
+ TS_NSUBTESTS=0
+ TS_NSUBFAILED=0
+
+ TS_SELF="$TS_SUBDIR"
+
+ TS_OUTDIR="$top_builddir/tests/output/$TS_COMPONENT"
+ TS_DIFFDIR="$top_builddir/tests/diff/$TS_COMPONENT"
+
+ ts_init_core_env
+
+ TS_VERBOSE=$(ts_has_option "verbose" "$*")
+
+ BLKID_FILE="$TS_OUTDIR/${TS_TESTNAME}.blkidtab"
+
+ declare -a TS_SUID_PROGS
+ declare -a TS_SUID_USER
+ declare -a TS_SUID_GROUP
+
+ if [ -f $TS_TOPDIR/commands.sh ]; then
+ . $TS_TOPDIR/commands.sh
+ fi
+
+ export BLKID_FILE
+
+ rm -f $TS_OUTPUT $TS_VGDUMP
+ [ -d "$TS_OUTDIR" ] || mkdir -p "$TS_OUTDIR"
+
+ touch $TS_OUTPUT
+ [ -n "$TS_VALGRIND_CMD" ] && touch $TS_VGDUMP
+
+ if [ "$TS_VERBOSE" == "yes" ]; then
+ echo
+ echo " script: $TS_SCRIPT"
+ echo " sub dir: $TS_SUBDIR"
+ echo " top dir: $TS_TOPDIR"
+ echo " self: $TS_SELF"
+ echo " test name: $TS_TESTNAME"
+ echo " test desc: $TS_DESC"
+ echo " component: $TS_COMPONENT"
+ echo " namespace: $TS_NS"
+ echo " verbose: $TS_VERBOSE"
+ echo " output: $TS_OUTPUT"
+ echo " valgrind: $TS_VGDUMP"
+ echo " expected: $TS_EXPECTED"
+ echo " mountpoint: $TS_MOUNTPOINT"
+ echo
+ fi
+}
+
+function ts_init_subtest {
+
+ TS_SUBNAME="$1"
+
+ ts_init_core_subtest_env
+
+ [ $TS_NSUBTESTS -eq 0 ] && echo
+ TS_NSUBTESTS=$(( $TS_NSUBTESTS + 1 ))
+
+ printf "%16s: %-27s ..." "" "$TS_SUBNAME"
+}
+
+function ts_init {
+ local is_fake=$( ts_has_option "fake" "$*")
+ local is_force=$( ts_has_option "force" "$*")
+ local is_memcheck=$( ts_has_option "memcheck" "$*")
+
+ if [ "$is_memcheck" == "yes" -a -f /usr/bin/valgrind ]; then
+ TS_VALGRIND_CMD="/usr/bin/valgrind"
+ fi
+
+ ts_init_env "$*"
+
+ printf "%13s: %-30s ..." "$TS_COMPONENT" "$TS_DESC"
+
+ [ "$is_fake" == "yes" ] && ts_skip "fake mode"
+ [ "$TS_OPTIONAL" == "yes" -a "$is_force" != "yes" ] && ts_skip "optional"
+}
+
+function ts_init_suid {
+ PROG="$1"
+ ct=${#TS_SUID_PROGS[*]}
+
+ # Save info about original setting
+ TS_SUID_PROGS[$ct]=$PROG
+ TS_SUID_USER[$ct]=$(stat --printf="%U" $PROG)
+ TS_SUID_GROUP[$ct]=$(stat --printf="%G" $PROG)
+
+ chown root.root $PROG &> /dev/null
+ chmod u+s $PROG &> /dev/null
+}
+
+function ts_valgrind {
+ if [ -z "$TS_VALGRIND_CMD" ]; then
+ $*
+ else
+ $TS_VALGRIND_CMD --tool=memcheck --leak-check=full \
+ --leak-resolution=high --num-callers=20 \
+ --log-file="$TS_VGDUMP" $*
+ fi
+}
+
+function ts_gen_diff {
+ local res=0
+
+ if [ -s "$TS_OUTPUT" ]; then
+
+ # remove libtool lt- prefixes
+ sed --in-place 's/^lt\-\(.*\: \)/\1/g' $TS_OUTPUT
+
+ [ -d "$TS_DIFFDIR" ] || mkdir -p "$TS_DIFFDIR"
+ diff -u $TS_EXPECTED $TS_OUTPUT > $TS_DIFF
+
+ if [ -s $TS_DIFF ]; then
+ res=1
+ else
+ rm -f $TS_DIFF;
+ fi
+ else
+ res=1
+ fi
+ return $res
+}
+
+function tt_gen_mem_report {
+ [ -z "$TS_VALGRIND_CMD" ] && echo "$1"
+
+ grep -q -E 'ERROR SUMMARY: [1-9]' $TS_VGDUMP &> /dev/null
+ if [ $? -eq 0 ]; then
+ echo "mem-error detected!"
+ fi
+}
+
+function ts_finalize_subtest {
+ local res=0
+
+ if [ -s "$TS_EXPECTED" ]; then
+ ts_gen_diff
+ if [ $? -eq 1 ]; then
+ ts_failed_subtest "$1"
+ res=1
+ else
+ ts_ok_subtest "$(tt_gen_mem_report "$1")"
+ fi
+ else
+ ts_skip_subtest "output undefined"
+ fi
+
+ [ $res -ne 0 ] && TS_NSUBFAILED=$(( $TS_NSUBFAILED + 1 ))
+
+ # reset environment back to parental test
+ ts_init_core_env
+
+ return $res
+}
+
+function ts_finalize {
+ for idx in $(seq 0 $((${#TS_SUID_PROGS[*]} - 1))); do
+ PROG=${TS_SUID_PROGS[$idx]}
+ chmod a-s $PROG &> /dev/null
+ chown ${TS_SUID_USER[$idx]}.${TS_SUID_GROUP[$idx]} $PROG &> /dev/null
+ done
+
+ if [ $TS_NSUBTESTS -ne 0 ]; then
+ printf "%11s..."
+ if [ $TS_NSUBFAILED -ne 0 ]; then
+ ts_failed "$TS_NSUBFAILED from $TS_NSUBTESTS sub-tests"
+ else
+ ts_ok "all $TS_NSUBTESTS sub-tests PASSED"
+ fi
+ fi
+
+ if [ -s $TS_EXPECTED ]; then
+ ts_gen_diff
+ if [ $? -eq 1 ]; then
+ ts_failed "$1"
+ fi
+ ts_ok "$1"
+ fi
+
+ ts_skip "output undefined"
+}
+
+function ts_die {
+ ts_log "$1"
+ if [ -n "$2" ] && [ -b "$2" ]; then
+ ts_device_deinit "$2"
+ ts_fstab_clean # for sure...
+ fi
+ ts_finalize
+}
+
+function ts_image_md5sum {
+ local img=${1:-"$TS_OUTDIR/${TS_TESTNAME}.img"}
+ echo $(md5sum "$img" | awk '{printf $1}') $(basename "$img")
+}
+
+function ts_image_init {
+ local mib=${1:-"5"} # size in MiBs
+ local img=${2:-"$TS_OUTDIR/${TS_TESTNAME}.img"}
+
+ dd if=/dev/zero of="$img" bs=1M count=$mib &> /dev/null
+ echo "$img"
+ return 0
+}
+
+function ts_device_init {
+ local img=$(ts_image_init $1 $2)
+ local dev=$($TS_CMD_LOSETUP --show -f "$img")
+
+ if [ -z "$dev" ]; then
+ ts_device_deinit $dev
+ return 1 # error
+ fi
+
+ echo $dev
+ return 0 # succes
+}
+
+function ts_device_deinit {
+ local DEV="$1"
+
+ if [ -b "$DEV" ]; then
+ $TS_CMD_UMOUNT "$DEV" &> /dev/null
+ $TS_CMD_LOSETUP -d "$DEV" &> /dev/null
+ fi
+}
+
+function ts_uuid_by_devname {
+ echo $($TS_CMD_BLKID -p -s UUID -o value $1)
+}
+
+function ts_label_by_devname {
+ echo $($TS_CMD_BLKID -p -s LABEL -o value $1)
+}
+
+function ts_fstype_by_devname {
+ echo $($TS_CMD_BLKID -p -s TYPE -o value $1)
+}
+
+function ts_device_has {
+ local TAG="$1"
+ local VAL="$2"
+ local DEV="$3"
+ local vl=""
+
+ case $TAG in
+ "TYPE") vl=$(ts_fstype_by_devname $DEV);;
+ "LABEL") vl=$(ts_label_by_devname $DEV);;
+ "UUID") vl=$(ts_uuid_by_devname $DEV);;
+ *) return 1;;
+ esac
+
+ if [ "$vl" == "$VAL" ]; then
+ return 0
+ fi
+ return 1
+}
+
+function ts_device_has_uuid {
+ ts_uuid_by_devname "$1" | egrep -q '^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$'
+ return $?
+}
+
+function ts_is_mounted {
+ local DEV=$(ts_canonicalize "$1")
+
+ grep -q $DEV /proc/mounts && return 0
+
+ if [ "${DEV#/dev/loop/}" != "$DEV" ]; then
+ return grep -q "/dev/loop${DEV#/dev/loop/}" /proc/mounts
+ fi
+ return 1
+}
+
+function ts_fstab_open {
+ echo "# <!-- util-linux test entry" >> /etc/fstab
+}
+
+function ts_fstab_close {
+ echo "# -->" >> /etc/fstab
+}
+
+function ts_fstab_addline {
+ local SPEC="$1"
+ local MNT=${2:-"$TS_MOUNTPOINT"}
+ local FS=${3:-"auto"}
+ local OPT=${4:-"defaults"}
+
+ echo "$SPEC $MNT $FS $OPT 0 0" >> /etc/fstab
+}
+
+function ts_fstab_add {
+ ts_fstab_open
+ ts_fstab_addline $*
+ ts_fstab_close
+}
+
+function ts_fstab_clean {
+ sed --in-place "
+/# <!-- util-linux/!b
+:a
+/# -->/!{
+ N
+ ba
+}
+s/# <!-- util-linux.*-->//;
+/^$/d" /etc/fstab
+}
+
+function ts_fdisk_clean {
+ # remove non comparable parts of fdisk output
+ [ x"${DEVNAME}" != x"" ] && sed -i -e "s/\/dev\/${DEVNAME}/\/dev\/.../g" $TS_OUTPUT
+ sed -i -e 's/Disk identifier:.*//g' \
+ -e 's/Building a new.*//g' \
+ -e 's/Welcome to fdisk.*//g' \
+ $TS_OUTPUT
+}
diff --git a/tests/helpers/Makemodule.am b/tests/helpers/Makemodule.am
new file mode 100644
index 0000000..9724dae
--- /dev/null
+++ b/tests/helpers/Makemodule.am
@@ -0,0 +1,12 @@
+
+check_PROGRAMS += test_byteswap
+test_byteswap_SOURCES = tests/helpers/test_byteswap.c
+
+check_PROGRAMS += test_md5
+test_md5_SOURCES = tests/helpers/test_md5.c lib/md5.c
+
+check_PROGRAMS += test_pathnames
+test_pathnames_SOURCES = tests/helpers/test_pathnames.c
+
+check_PROGRAMS += test_sysinfo
+test_sysinfo_SOURCES = tests/helpers/test_sysinfo.c
diff --git a/tests/helpers/test_byteswap.c b/tests/helpers/test_byteswap.c
new file mode 100644
index 0000000..7467ed2
--- /dev/null
+++ b/tests/helpers/test_byteswap.c
@@ -0,0 +1,114 @@
+/*
+ * This testing program makes sure the byteswap functions work
+ *
+ * Copyright (C) 2000 by Theodore Ts'o.
+ * Copyright (C) 2008 Karel Zak <kzak@redhat.com>
+ *
+ * This file may be redistributed under the terms of the GNU Public
+ * License.
+ */
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <time.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <errno.h>
+#include <inttypes.h>
+
+#include "bitops.h"
+
+uint16_t ary16[] = {
+ 0x0001, 0x0100,
+ 0x1234, 0x3412,
+ 0xff00, 0x00ff,
+ 0x4000, 0x0040,
+ 0xfeff, 0xfffe,
+ 0x0000, 0x0000
+ };
+
+uint32_t ary32[] = {
+ 0x00000001, 0x01000000,
+ 0x80000000, 0x00000080,
+ 0x12345678, 0x78563412,
+ 0xffff0000, 0x0000ffff,
+ 0x00ff0000, 0x0000ff00,
+ 0xff000000, 0x000000ff,
+ 0x00000000, 0x00000000
+ };
+
+uint64_t ary64[] = {
+ 0x0000000000000001, 0x0100000000000000,
+ 0x8000000000000000, 0x0000000000000080,
+ 0x1234567812345678, 0x7856341278563412,
+ 0xffffffff00000000, 0x00000000ffffffff,
+ 0x00ff000000000000, 0x000000000000ff00,
+ 0xff00000000000000, 0x00000000000000ff,
+ 0x0000000000000000, 0x0000000000000000
+ };
+
+int main()
+{
+ int i;
+ int errors = 0;
+
+ printf("Testing swab16\n");
+ i=0;
+ do {
+ printf("swab16(0x%04"PRIx16") = 0x%04"PRIx16"\n",
+ ary16[i], swab16(ary16[i]));
+ if (swab16(ary16[i]) != ary16[i+1]) {
+ printf("Error!!! %04"PRIx16" != %04"PRIx16"\n",
+ swab16(ary16[i]), ary16[i+1]);
+ errors++;
+ }
+ if (swab16(ary16[i+1]) != ary16[i]) {
+ printf("Error!!! %04"PRIx16" != %04"PRIx16"\n",
+ swab16(ary16[i+1]), ary16[i]);
+ errors++;
+ }
+ i += 2;
+ } while (ary16[i] != 0);
+
+ printf("Testing swab32\n");
+ i = 0;
+ do {
+ printf("swab32(0x%08"PRIx32") = 0x%08"PRIx32"\n",
+ ary32[i], swab32(ary32[i]));
+ if (swab32(ary32[i]) != ary32[i+1]) {
+ printf("Error!!! %04"PRIx32" != %04"PRIx32"\n",
+ swab32(ary32[i]), ary32[i+1]);
+ errors++;
+ }
+ if (swab32(ary32[i+1]) != ary32[i]) {
+ printf("Error!!! %04"PRIx32" != %04"PRIx32"\n",
+ swab32(ary32[i+1]), ary32[i]);
+ errors++;
+ }
+ i += 2;
+ } while (ary32[i] != 0);
+
+ printf("Testing swab64\n");
+ i = 0;
+ do {
+ printf("swab64(0x%016"PRIx64") = 0x%016"PRIx64"\n",
+ ary64[i], swab64(ary64[i]));
+ if (swab64(ary64[i]) != ary64[i+1]) {
+ printf("Error!!! %016"PRIx64" != %016"PRIx64"\n",
+ swab64(ary64[i]), ary64[i+1]);
+ errors++;
+ }
+ if (swab64(ary64[i+1]) != ary64[i]) {
+ printf("Error!!! %016"PRIx64" != %016"PRIx64"\n",
+ swab64(ary64[i+1]), ary64[i]);
+ errors++;
+ }
+ i += 2;
+ } while (ary64[i] != 0);
+
+ if (!errors)
+ printf("No errors found in the byteswap implementation\n");
+
+ return errors;
+}
diff --git a/tests/helpers/test_md5.c b/tests/helpers/test_md5.c
new file mode 100644
index 0000000..0f37afd
--- /dev/null
+++ b/tests/helpers/test_md5.c
@@ -0,0 +1,29 @@
+
+#include <stdio.h>
+#include <unistd.h>
+
+#include "md5.h"
+
+int main()
+{
+ int i, ret;
+ struct MD5Context ctx;
+ unsigned char digest[MD5LENGTH];
+ unsigned char buf[BUFSIZ];
+
+ MD5Init( &ctx );
+
+ while(!feof(stdin) && !ferror(stdin)) {
+ ret = fread(buf, 1, sizeof(buf), stdin);
+ if (ret)
+ MD5Update( &ctx, buf, ret );
+ }
+
+ fclose(stdin);
+ MD5Final( digest, &ctx );
+
+ for (i = 0; i < MD5LENGTH; i++)
+ printf( "%02x", digest[i] );
+ printf(" -\n");
+ return 0;
+}
diff --git a/tests/helpers/test_pathnames.c b/tests/helpers/test_pathnames.c
new file mode 100644
index 0000000..ebd5249
--- /dev/null
+++ b/tests/helpers/test_pathnames.c
@@ -0,0 +1,100 @@
+/*
+ * Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+ *
+ * This file is part of util-linux.
+ *
+ * This file 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 file 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.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "pathnames.h"
+
+struct hlpPath
+{
+ const char *name;
+ const char *path;
+};
+
+#define DEF_HLPPATH(_p) { #_p, _p }
+
+struct hlpPath paths[] =
+{
+ DEF_HLPPATH(_PATH_DEFPATH),
+ DEF_HLPPATH(_PATH_DEFPATH_ROOT),
+ DEF_HLPPATH(_PATH_DEV_TTY),
+ DEF_HLPPATH(_PATH_DEV_LOOP),
+ DEF_HLPPATH(_PATH_SECURETTY),
+ DEF_HLPPATH(_PATH_WTMPLOCK),
+ DEF_HLPPATH(_PATH_HUSHLOGIN),
+ DEF_HLPPATH(_PATH_MAILDIR),
+ DEF_HLPPATH(_PATH_MOTDFILE),
+ DEF_HLPPATH(_PATH_NOLOGIN),
+ DEF_HLPPATH(_PATH_LOGIN),
+ DEF_HLPPATH(_PATH_INITTAB),
+ DEF_HLPPATH(_PATH_RC),
+ DEF_HLPPATH(_PATH_REBOOT),
+ DEF_HLPPATH(_PATH_SINGLE),
+ DEF_HLPPATH(_PATH_SHUTDOWN_CONF),
+ DEF_HLPPATH(_PATH_SECURE),
+ DEF_HLPPATH(_PATH_USERTTY),
+ DEF_HLPPATH(_PATH_UMOUNT),
+ DEF_HLPPATH(_PATH_PASSWD),
+ DEF_HLPPATH(_PATH_GSHADOW),
+ DEF_HLPPATH(_PATH_GROUP),
+ DEF_HLPPATH(_PATH_SHADOW_PASSWD),
+ DEF_HLPPATH(_PATH_WORDS),
+ DEF_HLPPATH(_PATH_WORDS_ALT),
+ DEF_HLPPATH(_PATH_UMOUNT),
+ DEF_HLPPATH(_PATH_FILESYSTEMS),
+ DEF_HLPPATH(_PATH_PROC_SWAPS),
+ DEF_HLPPATH(_PATH_PROC_FILESYSTEMS),
+ DEF_HLPPATH(_PATH_MOUNTED),
+ DEF_HLPPATH(_PATH_MNTTAB),
+ DEF_HLPPATH(_PATH_MOUNTED_LOCK),
+ DEF_HLPPATH(_PATH_MOUNTED_TMP),
+ DEF_HLPPATH(_PATH_DEV_BYLABEL),
+ DEF_HLPPATH(_PATH_DEV_BYUUID),
+ { NULL, NULL }
+};
+
+int
+main(int argc, char **argv)
+{
+ struct hlpPath *p;
+
+ if (argc == 1) {
+ for (p = paths; p->name; p++)
+ printf("%20s %s\n", p->name, p->path);
+ exit(EXIT_SUCCESS);
+ } else {
+ if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-h") == 0) {
+ printf("%s <option>\n", argv[0]);
+ fputs("options:\n", stdout);
+ for (p = paths; p->name; p++)
+ printf("\t%s\n", p->name);
+ exit(EXIT_SUCCESS);
+ }
+
+ for (p = paths; p->name; p++) {
+ if (strcmp(p->name, argv[1]) == 0) {
+ printf("%s\n", p->path);
+ exit(EXIT_SUCCESS);
+ }
+ }
+ }
+
+ exit(EXIT_FAILURE);
+}
+
diff --git a/tests/helpers/test_sysinfo.c b/tests/helpers/test_sysinfo.c
new file mode 100644
index 0000000..3983f28
--- /dev/null
+++ b/tests/helpers/test_sysinfo.c
@@ -0,0 +1,129 @@
+/*
+ * Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+ *
+ * This file is part of util-linux.
+ *
+ * This file 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 file 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.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <limits.h>
+
+typedef struct {
+ const char *name;
+ int (*fnc)(void);
+} mntHlpfnc;
+
+static int hlp_wordsize(void)
+{
+ printf("%lu\n", CHAR_BIT * sizeof(void*));
+ return 0;
+}
+
+static int hlp_endianness(void)
+{
+#if !defined(WORDS_BIGENDIAN)
+ printf("LE\n");
+#else
+ printf("BE\n");
+#endif
+ return 0;
+}
+
+
+static int hlp_pagesize(void)
+{
+ printf("%d\n", getpagesize());
+ return 0;
+}
+
+static int hlp_int_max(void)
+{
+ printf("%d\n", INT_MAX);
+ return 0;
+}
+
+static int hlp_uint_max(void)
+{
+ printf("%u\n", UINT_MAX);
+ return 0;
+}
+
+static int hlp_long_max(void)
+{
+ printf("%ld\n", LONG_MAX);
+ return 0;
+}
+
+static int hlp_ulong_max(void)
+{
+ printf("%lu\n", ULONG_MAX);
+ return 0;
+}
+
+static int hlp_ulong_max32(void)
+{
+#if __WORDSIZE == 64
+ printf("%lu\n", ULONG_MAX >> 32);
+#else
+ printf("%lu\n", ULONG_MAX);
+#endif
+ return 0;
+}
+
+static mntHlpfnc hlps[] =
+{
+ { "WORDSIZE", hlp_wordsize },
+ { "pagesize", hlp_pagesize },
+ { "INT_MAX", hlp_int_max },
+ { "UINT_MAX", hlp_uint_max },
+ { "LONG_MAX", hlp_long_max },
+ { "ULONG_MAX", hlp_ulong_max },
+ { "ULONG_MAX32",hlp_ulong_max32 },
+ { "byte-order", hlp_endianness },
+ { NULL, NULL }
+};
+
+int main(int argc, char **argv)
+{
+ int re = 0;
+ mntHlpfnc *fn;
+
+ if (argc == 1) {
+ for (fn = hlps; fn->name; fn++) {
+ printf("%15s: ", fn->name);
+ re += fn->fnc();
+ }
+ } else {
+ int i;
+
+ if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-h") == 0) {
+ printf("%s <option>\n", argv[0]);
+ fputs("options:\n", stdout);
+ for (fn = hlps; fn->name; fn++)
+ printf("\t%s\n", fn->name);
+ exit(EXIT_SUCCESS);
+ }
+
+ for (i=1; i < argc; i++) {
+ for (fn = hlps; fn->name; fn++) {
+ if (strcmp(fn->name, argv[i]) == 0)
+ re += fn->fnc();
+ }
+ }
+ }
+
+ exit(re ? EXIT_FAILURE : EXIT_SUCCESS);
+}
+
diff --git a/tests/run.sh b/tests/run.sh
new file mode 100755
index 0000000..6ed05c1
--- /dev/null
+++ b/tests/run.sh
@@ -0,0 +1,136 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR=$(cd $(dirname $0) && pwd)
+SUBTESTS=
+OPTS=
+
+top_srcdir=
+top_builddir=
+
+while [ -n "$1" ]; do
+ case "$1" in
+ --force)
+ OPTS="$OPTS --force"
+ ;;
+ --fake)
+ OPTS="$OPTS --fake"
+ ;;
+ --memcheck)
+ OPTS="$OPTS --memcheck"
+ ;;
+ --verbose)
+ OPTS="$OPTS --verbose"
+ ;;
+ --nonroot)
+ if [ $(id -ru) -eq 0 ]; then
+ echo "Ignore utils-linux test suite [non-root UID expected]."
+ exit 0
+ fi
+ ;;
+ --srcdir=*)
+ top_srcdir="${1##--srcdir=}"
+ ;;
+ --builddir=*)
+ top_builddir="${1##--builddir=}"
+ ;;
+ --*)
+ echo "Unknown option $1"
+ echo "Usage: "
+ echo " $(basename $0) [options] [<component> ...]"
+ echo "Options:"
+ echo " --force execute demanding tests"
+ echo " --fake do not run, setup tests only"
+ echo " --memcheck run with valgrind"
+ echo " --verbose verbose mode"
+ echo " --nonroot ignore test suite if user is root"
+ echo " --srcdir=<path> autotools top source directory"
+ echo " --builddir=<path> autotools top build directory"
+ echo
+ exit 1
+ ;;
+
+ *)
+ SUBTESTS="$SUBTESTS $1"
+ ;;
+ esac
+ shift
+done
+
+# For compatibility with autotools is necessary to differentiate between source
+# (with test scripts) and build (with temporary files) directories when
+# executed by our build-system.
+#
+# The default is the source tree with this script.
+#
+if [ -z "$top_srcdir" ]; then
+ top_srcdir="$TS_TOPDIR/.."
+fi
+if [ -z "$top_builddir" ]; then
+ top_builddir="$TS_TOPDIR/.."
+fi
+
+OPTS="$OPTS --srcdir=$top_srcdir --builddir=$top_builddir"
+
+if [ -n "$SUBTESTS" ]; then
+ # selected tests only
+ for s in $SUBTESTS; do
+ if [ -d "$top_srcdir/tests/ts/$s" ]; then
+ co=$(find $top_srcdir/tests/ts/$s -type f -perm /a+x -regex ".*/[^\.~]*" | sort)
+ comps="$comps $co"
+ else
+ echo "Unknown test component '$s'"
+ exit 1
+ fi
+ done
+else
+ if [ ! -f "$top_builddir/test_tt" ]; then
+ echo "Tests not compiled! Run 'make check' to fix the problem."
+ exit 1
+ fi
+
+ comps=$(find $top_srcdir/tests/ts/ -type f -perm /a+x -regex ".*/[^\.~]*" | sort)
+fi
+
+
+echo
+echo "-------------------- util-linux regression tests --------------------"
+echo
+echo " For development purpose only. "
+echo " Don't execute on production system! "
+echo
+
+res=0
+count=0
+for ts in $comps; do
+ $ts "$OPTS"
+ res=$(( $res + $? ))
+ count=$(( $count + 1 ))
+done
+
+echo
+echo "---------------------------------------------------------------------"
+if [ $res -eq 0 ]; then
+ echo " All $count tests PASSED"
+ res=0
+else
+ echo " $res tests of $count FAILED"
+ res=1
+fi
+echo "---------------------------------------------------------------------"
+exit $res
diff --git a/tests/ts/bitops/swapbytes b/tests/ts/bitops/swapbytes
new file mode 100755
index 0000000..62e380c
--- /dev/null
+++ b/tests/ts/bitops/swapbytes
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="swap bytes"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+$TS_HELPER_BYTESWAP >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/blkid/images-fs/adaptec-raid.img.bz2 b/tests/ts/blkid/images-fs/adaptec-raid.img.bz2
new file mode 100644
index 0000000..d3c10d7
--- /dev/null
+++ b/tests/ts/blkid/images-fs/adaptec-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/befs.img.bz2 b/tests/ts/blkid/images-fs/befs.img.bz2
new file mode 100644
index 0000000..f4deaec
--- /dev/null
+++ b/tests/ts/blkid/images-fs/befs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/bfs.img.bz2 b/tests/ts/blkid/images-fs/bfs.img.bz2
new file mode 100644
index 0000000..54df48f
--- /dev/null
+++ b/tests/ts/blkid/images-fs/bfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/cramfs.img.bz2 b/tests/ts/blkid/images-fs/cramfs.img.bz2
new file mode 100644
index 0000000..d638116
--- /dev/null
+++ b/tests/ts/blkid/images-fs/cramfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ddf-raid.img.bz2 b/tests/ts/blkid/images-fs/ddf-raid.img.bz2
new file mode 100644
index 0000000..b093493
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ddf-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/exfat.img.bz2 b/tests/ts/blkid/images-fs/exfat.img.bz2
new file mode 100644
index 0000000..f96c3f0
--- /dev/null
+++ b/tests/ts/blkid/images-fs/exfat.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ext2.img.bz2 b/tests/ts/blkid/images-fs/ext2.img.bz2
new file mode 100644
index 0000000..d1811ce
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ext2.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ext3.img.bz2 b/tests/ts/blkid/images-fs/ext3.img.bz2
new file mode 100644
index 0000000..5394598
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ext3.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/fat.img.bz2 b/tests/ts/blkid/images-fs/fat.img.bz2
new file mode 100644
index 0000000..1fa7f2d
--- /dev/null
+++ b/tests/ts/blkid/images-fs/fat.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/fat16_noheads.img.bz2 b/tests/ts/blkid/images-fs/fat16_noheads.img.bz2
new file mode 100644
index 0000000..4d3d26c
--- /dev/null
+++ b/tests/ts/blkid/images-fs/fat16_noheads.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/fat32_label_64MB.img.bz2 b/tests/ts/blkid/images-fs/fat32_label_64MB.img.bz2
new file mode 100644
index 0000000..ca76293
--- /dev/null
+++ b/tests/ts/blkid/images-fs/fat32_label_64MB.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/gfs2.img.bz2 b/tests/ts/blkid/images-fs/gfs2.img.bz2
new file mode 100644
index 0000000..bab2f90
--- /dev/null
+++ b/tests/ts/blkid/images-fs/gfs2.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/hfs.img.bz2 b/tests/ts/blkid/images-fs/hfs.img.bz2
new file mode 100644
index 0000000..d4fc1ab
--- /dev/null
+++ b/tests/ts/blkid/images-fs/hfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/hfsplus.img.bz2 b/tests/ts/blkid/images-fs/hfsplus.img.bz2
new file mode 100644
index 0000000..b6ad1b9
--- /dev/null
+++ b/tests/ts/blkid/images-fs/hfsplus.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/hpfs.img.bz2 b/tests/ts/blkid/images-fs/hpfs.img.bz2
new file mode 100644
index 0000000..a54e6df
--- /dev/null
+++ b/tests/ts/blkid/images-fs/hpfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/hpt37x-raid.img.bz2 b/tests/ts/blkid/images-fs/hpt37x-raid.img.bz2
new file mode 100644
index 0000000..52e13bb
--- /dev/null
+++ b/tests/ts/blkid/images-fs/hpt37x-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/hpt45x-raid.img.bz2 b/tests/ts/blkid/images-fs/hpt45x-raid.img.bz2
new file mode 100644
index 0000000..1feaa5b
--- /dev/null
+++ b/tests/ts/blkid/images-fs/hpt45x-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/iso-joliet.img.bz2 b/tests/ts/blkid/images-fs/iso-joliet.img.bz2
new file mode 100644
index 0000000..4e43c0b
--- /dev/null
+++ b/tests/ts/blkid/images-fs/iso-joliet.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/iso-rr-joliet.img.bz2 b/tests/ts/blkid/images-fs/iso-rr-joliet.img.bz2
new file mode 100644
index 0000000..97e8b76
--- /dev/null
+++ b/tests/ts/blkid/images-fs/iso-rr-joliet.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/iso.img.bz2 b/tests/ts/blkid/images-fs/iso.img.bz2
new file mode 100644
index 0000000..4389847
--- /dev/null
+++ b/tests/ts/blkid/images-fs/iso.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/isw-raid.img.bz2 b/tests/ts/blkid/images-fs/isw-raid.img.bz2
new file mode 100644
index 0000000..9214c96
--- /dev/null
+++ b/tests/ts/blkid/images-fs/isw-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/jbd.img.bz2 b/tests/ts/blkid/images-fs/jbd.img.bz2
new file mode 100644
index 0000000..e6c4fc4
--- /dev/null
+++ b/tests/ts/blkid/images-fs/jbd.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/jfs.img.bz2 b/tests/ts/blkid/images-fs/jfs.img.bz2
new file mode 100644
index 0000000..1d4d249
--- /dev/null
+++ b/tests/ts/blkid/images-fs/jfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/jmicron-raid.img.bz2 b/tests/ts/blkid/images-fs/jmicron-raid.img.bz2
new file mode 100644
index 0000000..3b4b236
--- /dev/null
+++ b/tests/ts/blkid/images-fs/jmicron-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/lsi-raid.img.bz2 b/tests/ts/blkid/images-fs/lsi-raid.img.bz2
new file mode 100644
index 0000000..ffd75c3
--- /dev/null
+++ b/tests/ts/blkid/images-fs/lsi-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/lvm2.img.bz2 b/tests/ts/blkid/images-fs/lvm2.img.bz2
new file mode 100644
index 0000000..7bb84bf
--- /dev/null
+++ b/tests/ts/blkid/images-fs/lvm2.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/mdraid.img.bz2 b/tests/ts/blkid/images-fs/mdraid.img.bz2
new file mode 100644
index 0000000..d5a67a3
--- /dev/null
+++ b/tests/ts/blkid/images-fs/mdraid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/minix.img.bz2 b/tests/ts/blkid/images-fs/minix.img.bz2
new file mode 100644
index 0000000..d11f3a8
--- /dev/null
+++ b/tests/ts/blkid/images-fs/minix.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/netware.img.bz2 b/tests/ts/blkid/images-fs/netware.img.bz2
new file mode 100644
index 0000000..9c20673
--- /dev/null
+++ b/tests/ts/blkid/images-fs/netware.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/nilfs2.img.bz2 b/tests/ts/blkid/images-fs/nilfs2.img.bz2
new file mode 100644
index 0000000..a9762eb
--- /dev/null
+++ b/tests/ts/blkid/images-fs/nilfs2.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ntfs.img.bz2 b/tests/ts/blkid/images-fs/ntfs.img.bz2
new file mode 100644
index 0000000..dc1249f
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ntfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/nvidia-raid.img.bz2 b/tests/ts/blkid/images-fs/nvidia-raid.img.bz2
new file mode 100644
index 0000000..21f062e
--- /dev/null
+++ b/tests/ts/blkid/images-fs/nvidia-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ocfs2.img.bz2 b/tests/ts/blkid/images-fs/ocfs2.img.bz2
new file mode 100644
index 0000000..7e203da
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ocfs2.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/promise-raid.img.bz2 b/tests/ts/blkid/images-fs/promise-raid.img.bz2
new file mode 100644
index 0000000..64a5a08
--- /dev/null
+++ b/tests/ts/blkid/images-fs/promise-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/reiser3.img.bz2 b/tests/ts/blkid/images-fs/reiser3.img.bz2
new file mode 100644
index 0000000..1802bc2
--- /dev/null
+++ b/tests/ts/blkid/images-fs/reiser3.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/reiser4.img.bz2 b/tests/ts/blkid/images-fs/reiser4.img.bz2
new file mode 100644
index 0000000..d07571e
--- /dev/null
+++ b/tests/ts/blkid/images-fs/reiser4.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/romfs.img.bz2 b/tests/ts/blkid/images-fs/romfs.img.bz2
new file mode 100644
index 0000000..f94d77b
--- /dev/null
+++ b/tests/ts/blkid/images-fs/romfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/silicon-raid.img.bz2 b/tests/ts/blkid/images-fs/silicon-raid.img.bz2
new file mode 100644
index 0000000..e3ccbf9
--- /dev/null
+++ b/tests/ts/blkid/images-fs/silicon-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/small-fat32.img.bz2 b/tests/ts/blkid/images-fs/small-fat32.img.bz2
new file mode 100644
index 0000000..8b90f9c
--- /dev/null
+++ b/tests/ts/blkid/images-fs/small-fat32.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/swap0.img.bz2 b/tests/ts/blkid/images-fs/swap0.img.bz2
new file mode 100644
index 0000000..d027b6f
--- /dev/null
+++ b/tests/ts/blkid/images-fs/swap0.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/swap1.img.bz2 b/tests/ts/blkid/images-fs/swap1.img.bz2
new file mode 100644
index 0000000..37adedd
--- /dev/null
+++ b/tests/ts/blkid/images-fs/swap1.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/tuxonice.img.bz2 b/tests/ts/blkid/images-fs/tuxonice.img.bz2
new file mode 100644
index 0000000..a70c95a
--- /dev/null
+++ b/tests/ts/blkid/images-fs/tuxonice.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ubifs.img.bz2 b/tests/ts/blkid/images-fs/ubifs.img.bz2
new file mode 100644
index 0000000..efba8f7
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ubifs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/udf.img.bz2 b/tests/ts/blkid/images-fs/udf.img.bz2
new file mode 100644
index 0000000..bd2deb0
--- /dev/null
+++ b/tests/ts/blkid/images-fs/udf.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/ufs.img.bz2 b/tests/ts/blkid/images-fs/ufs.img.bz2
new file mode 100644
index 0000000..67abbed
--- /dev/null
+++ b/tests/ts/blkid/images-fs/ufs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/via-raid.img.bz2 b/tests/ts/blkid/images-fs/via-raid.img.bz2
new file mode 100644
index 0000000..9266f5e
--- /dev/null
+++ b/tests/ts/blkid/images-fs/via-raid.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/vmfs.img.bz2 b/tests/ts/blkid/images-fs/vmfs.img.bz2
new file mode 100644
index 0000000..0940143
--- /dev/null
+++ b/tests/ts/blkid/images-fs/vmfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/vmfs_volume.img.bz2 b/tests/ts/blkid/images-fs/vmfs_volume.img.bz2
new file mode 100644
index 0000000..cc0ec66
--- /dev/null
+++ b/tests/ts/blkid/images-fs/vmfs_volume.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/xfs.img.bz2 b/tests/ts/blkid/images-fs/xfs.img.bz2
new file mode 100644
index 0000000..cf6982b
--- /dev/null
+++ b/tests/ts/blkid/images-fs/xfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-fs/zfs.img.bz2 b/tests/ts/blkid/images-fs/zfs.img.bz2
new file mode 100644
index 0000000..dfaaef0
--- /dev/null
+++ b/tests/ts/blkid/images-fs/zfs.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-pt/bsd.img.bz2 b/tests/ts/blkid/images-pt/bsd.img.bz2
new file mode 100644
index 0000000..c4b05e4
--- /dev/null
+++ b/tests/ts/blkid/images-pt/bsd.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-pt/dos+bsd.img.bz2 b/tests/ts/blkid/images-pt/dos+bsd.img.bz2
new file mode 100644
index 0000000..cccdd8a
--- /dev/null
+++ b/tests/ts/blkid/images-pt/dos+bsd.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-pt/gpt.img.bz2 b/tests/ts/blkid/images-pt/gpt.img.bz2
new file mode 100644
index 0000000..df4de7c
--- /dev/null
+++ b/tests/ts/blkid/images-pt/gpt.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-pt/sgi.img.bz2 b/tests/ts/blkid/images-pt/sgi.img.bz2
new file mode 100644
index 0000000..3b1c313
--- /dev/null
+++ b/tests/ts/blkid/images-pt/sgi.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/images-pt/sun.img.bz2 b/tests/ts/blkid/images-pt/sun.img.bz2
new file mode 100644
index 0000000..adf4f02
--- /dev/null
+++ b/tests/ts/blkid/images-pt/sun.img.bz2
Binary files differ
diff --git a/tests/ts/blkid/low-probe b/tests/ts/blkid/low-probe
new file mode 100755
index 0000000..9dc1a17
--- /dev/null
+++ b/tests/ts/blkid/low-probe
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="low-level superblocks probing"
+
+. $TS_TOPDIR/functions.sh
+
+ts_init "$*"
+
+if [ ! -x "$TS_CMD_BLKID" ]; then
+ ts_skip "blkid disabled"
+fi
+
+mkdir -p $TS_OUTDIR/images-fs
+
+for img in $(ls $TS_SELF/images-fs/*.img.bz2 | sort); do
+ name=$(basename $img .img.bz2)
+ outimg=$TS_OUTDIR/images-fs/${name}.img
+
+ ts_init_subtest $name
+
+ bunzip2 < $img > $outimg
+
+ #/lib/udev/vol_id $outimg | egrep -v '[[:alnum:]_]*=$' | sort > $TS_OUTPUT 2>&1
+ $TS_CMD_BLKID -p -o udev $outimg 2>&1 | sort > $TS_OUTPUT
+ ts_finalize_subtest
+done
+
+ts_finalize
+
diff --git a/tests/ts/blkid/lowprobe-pt b/tests/ts/blkid/lowprobe-pt
new file mode 100755
index 0000000..b88dd60
--- /dev/null
+++ b/tests/ts/blkid/lowprobe-pt
@@ -0,0 +1,45 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="partitions probing"
+
+. $TS_TOPDIR/functions.sh
+
+ts_init "$*"
+
+if [ ! -x "$TS_HELPER_PARTITIONS" ]; then
+ ts_skip "blkid disabled"
+fi
+
+mkdir -p $TS_OUTDIR/images-pt
+
+for img in $(ls $TS_SELF/images-pt/*.img.bz2 | sort); do
+ name=$(basename $img .img.bz2)
+ outimg=$TS_OUTDIR/images-pt/${name}.img
+
+ ts_init_subtest $name
+
+ bunzip2 < $img > $outimg
+
+ $TS_HELPER_PARTITIONS $outimg &> $TS_OUTPUT
+ ts_finalize_subtest
+done
+
+ts_finalize
+
diff --git a/tests/ts/blkid/md-raid0-whole b/tests/ts/blkid/md-raid0-whole
new file mode 100755
index 0000000..7a55c54
--- /dev/null
+++ b/tests/ts/blkid/md-raid0-whole
@@ -0,0 +1,85 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MD raid0 (whole-disks)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+[ -x /sbin/mdadm ] || ts_skip "missing mdadm"
+
+set -o pipefail
+
+ts_log "Initialize devices"
+IMGNAME="${TS_OUTDIR}/${TS_TESTNAME}"
+
+DEVICE1=$(ts_device_init 50 ${IMGNAME}1.img)
+[ "$?" == 0 ] || ts_die "Cannot init device1"
+
+DEVICE2=$(ts_device_init 50 ${IMGNAME}2.img)
+[ "$?" == 0 ] || ts_die "Cannot init device2" $DEVICE1
+
+MD_DEVNAME=md8
+MD_DEVICE=/dev/${MD_DEVNAME}
+
+/sbin/mdadm -q -S ${MD_DEVICE} &> /dev/null
+
+ts_log "Create RAID device"
+/sbin/mdadm -q --create ${MD_DEVICE} --metadata=0.90 --chunk=64 --level=0 \
+ --raid-devices=2 ${DEVICE1} ${DEVICE2} >> $TS_OUTPUT 2>&1
+
+ts_log "Create partitions on RAID device"
+$TS_CMD_FDISK ${MD_DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
+
+p
+w
+q
+EOF
+
+sleep 3
+
+ts_log "Probe first RAID member"
+$TS_CMD_BLKID -p -o udev $DEVICE1 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Probe second RAID member"
+$TS_CMD_BLKID -p -o udev $DEVICE1 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Stop RAID device"
+/sbin/mdadm -q -S ${MD_DEVICE} >> $TS_OUTPUT 2>&1
+
+sleep 3
+
+ts_log "Deinitialize devices"
+ts_device_deinit $DEVICE1
+ts_device_deinit $DEVICE2
+
+ts_fdisk_clean
+# remove generated UUIDs
+sed -i -e 's/ID_FS_UUID.*//g' $TS_OUTPUT
+
+ts_finalize
diff --git a/tests/ts/blkid/md-raid1-part b/tests/ts/blkid/md-raid1-part
new file mode 100755
index 0000000..e13901d
--- /dev/null
+++ b/tests/ts/blkid/md-raid1-part
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MD raid1 (last partition)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+[ -x /sbin/mdadm ] || ts_skip "missing mdadm"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=51 sector_size=512
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++25M
+n
+p
+2
+
+
+p
+w
+q
+EOF
+
+sleep 3
+MD_DEVNAME=md8
+MD_DEVICE=/dev/${MD_DEVNAME}
+
+ts_log "Create RAID1 device"
+/sbin/mdadm -q -S ${MD_DEVICE} &> /dev/null
+/sbin/mdadm -q --create ${MD_DEVICE} --metadata=0.90 --chunk=64 --level=1 \
+ --raid-devices=2 ${DEVICE}1 ${DEVICE}2 >> $TS_OUTPUT 2>&1
+
+sleep 3
+
+ts_log "Probe whole-disk"
+$TS_CMD_BLKID -p -o udev ${DEVICE} 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Probe first RAID member"
+$TS_CMD_BLKID -p -o udev ${DEVICE}1 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Probe second RAID member"
+$TS_CMD_BLKID -p -o udev ${DEVICE}2 2>&1 | sort >> $TS_OUTPUT
+
+/sbin/mdadm -q -S ${MD_DEVICE} >> $TS_OUTPUT 2>&1
+
+sleep 3
+rmmod scsi_debug
+
+ts_fdisk_clean
+# substitue UUIDs and major/minor number before comparison
+sed -i \
+ -e 's/^\(ID_FS_UUID\)=.*/\1=__ts_uuid__/' \
+ -e 's/^\(ID_FS_UUID_ENC\)=.*/\1=__ts_uuid_enc__/' \
+ -e 's/^\(ID_PART_ENTRY_DISK\)=.*/\1=__ts_majorminor__/' \
+ $TS_OUTPUT
+
+ts_finalize
diff --git a/tests/ts/blkid/md-raid1-whole b/tests/ts/blkid/md-raid1-whole
new file mode 100755
index 0000000..32e17b8
--- /dev/null
+++ b/tests/ts/blkid/md-raid1-whole
@@ -0,0 +1,85 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MD raid1 (whole-disks)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+[ -x /sbin/mdadm ] || ts_skip "missing mdadm"
+
+set -o pipefail
+
+ts_log "Initialize devices"
+IMGNAME="${TS_OUTDIR}/${TS_TESTNAME}"
+
+DEVICE1=$(ts_device_init 50 ${IMGNAME}1.img)
+[ "$?" == 0 ] || ts_die "Cannot init device1"
+
+DEVICE2=$(ts_device_init 50 ${IMGNAME}2.img)
+[ "$?" == 0 ] || ts_die "Cannot init device2" $DEVICE1
+
+MD_DEVNAME=md8
+MD_DEVICE=/dev/${MD_DEVNAME}
+
+/sbin/mdadm -q -S ${MD_DEVICE} &> /dev/null
+
+ts_log "Create RAID device"
+/sbin/mdadm -q --create ${MD_DEVICE} --metadata=0.90 --chunk=64 --level=1 \
+ --raid-devices=2 ${DEVICE1} ${DEVICE2} >> $TS_OUTPUT 2>&1
+
+ts_log "Create partitions on RAID device"
+$TS_CMD_FDISK ${MD_DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+p
+w
+q
+EOF
+
+sleep 3
+
+ts_log "Probe first RAID member"
+$TS_CMD_BLKID -p -o udev $DEVICE1 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Probe second RAID member"
+$TS_CMD_BLKID -p -o udev $DEVICE1 2>&1 | sort >> $TS_OUTPUT
+
+ts_log "Stop RAID device"
+/sbin/mdadm -q -S ${MD_DEVICE} >> $TS_OUTPUT 2>&1
+
+sleep 3
+
+ts_log "Deinitialize devices"
+ts_device_deinit $DEVICE1
+ts_device_deinit $DEVICE2
+
+ts_fdisk_clean
+# remove generated UUIDs
+sed -i -e 's/ID_FS_UUID.*//g' $TS_OUTPUT
+
+ts_finalize
diff --git a/tests/ts/build-sys/config b/tests/ts/build-sys/config
new file mode 100755
index 0000000..e2c2b00
--- /dev/null
+++ b/tests/ts/build-sys/config
@@ -0,0 +1,70 @@
+#!/bin/bash
+
+# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="config"
+
+# Don't execute this test by default, --force required
+TS_OPTIONAL="yes"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+[ -x /usr/bin/readelf ] || ts_skip "readelf(1) not found"
+[ -x /usr/bin/file ] || ts_skip "file(1) not found"
+
+config_gen_dir="$top_srcdir/tools"
+. $config_gen_dir/config-gen-functions.sh
+
+[ -n "$CFLAGS" ] && export CFLAGS="$CFLAGS"
+
+cd $top_builddir && make -j clean &> /dev/null
+
+for conf in $config_gen_dir/config-gen.d/*.conf; do
+ ts_init_subtest $(basename $conf | sed 's/\.conf//')
+
+ opts=$(ul_get_configuration $conf)
+
+ olddir=$(pwd)
+ cd $top_builddir
+
+ ./configure $opts &> /dev/null
+ make -j &> /dev/null
+
+ bins=$(find . -type f -perm /a+x | sort)
+ for b in $bins; do
+ libs=$(readelf --dynamic $b 2> /dev/null | \
+ awk '/NEEDED/ { print $5 }' | \
+ sed 's:\[::g; s:\..*::g; s:libc::g' | \
+ sort -u | tr '\n' ' ')
+
+ if [ -n "$libs" ]; then
+ echo "$(basename $b): $libs" >> $TS_OUTPUT
+ else
+ fres=$(file $b)
+ case $fres in
+ *statically*)
+ echo "$(basename $b): STATIC" >> $TS_OUTPUT
+ ;;
+ *) # ignore scripts, ...etc.
+ ;;
+ esac
+ fi
+ done
+
+ # clean the tree, but exclude tests/{diff,output} dirs
+ #
+ [ -d tests/diff ] && mv tests/diff tests/diff.save
+ [ -d tests/output ] && mv tests/output tests/output.save
+
+ make -j clean &> /dev/null
+
+ [ -d tests/diff.save ] && mv tests/diff.save tests/diff
+ [ -d tests/output.save ] && mv tests/output.save tests/output
+
+ cd $olddir
+ ts_finalize_subtest
+done
+
+ts_finalize
diff --git a/tests/ts/cal/1m b/tests/ts/cal/1m
new file mode 100755
index 0000000..b4e4b75
--- /dev/null
+++ b/tests/ts/cal/1m
@@ -0,0 +1,59 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="1 month"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+set -o pipefail
+
+USETERM=$( ts_has_option "useterm" "$*" )
+MYTIME="27 09 2006"
+
+[ "$USETERM" == "yes" ] && TS_VERBOSE="yes"
+ts_log ""
+
+ts_log "Gregorian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -1m $MYTIME
+fi
+$TS_CMD_CAL -1m $MYTIME >> $TS_OUTPUT
+
+ts_log "Gregorian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -1s $MYTIME
+fi
+$TS_CMD_CAL -1s $MYTIME >> $TS_OUTPUT
+
+
+ts_log "Julian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -1mj $MYTIME
+fi
+$TS_CMD_CAL -1mj $MYTIME >> $TS_OUTPUT
+
+ts_log "Julian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -1sj $MYTIME
+fi
+$TS_CMD_CAL -1sj $MYTIME >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/cal/3m b/tests/ts/cal/3m
new file mode 100755
index 0000000..bf9c222
--- /dev/null
+++ b/tests/ts/cal/3m
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="3 months"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+set -o pipefail
+
+USETERM=$( ts_has_option "useterm" "$*" )
+MYTIME="27 09 2006"
+
+[ "$USETERM" == "yes" ] && TS_VERBOSE="yes"
+ts_log ""
+
+ts_log "Gregorian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -3m $MYTIME
+fi
+$TS_CMD_CAL -3m $MYTIME >> $TS_OUTPUT
+
+ts_log "Gregorian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -3s $MYTIME
+fi
+$TS_CMD_CAL -3s $MYTIME >> $TS_OUTPUT
+
+
+ts_log "Julian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -3mj $MYTIME
+fi
+$TS_CMD_CAL -3mj $MYTIME >> $TS_OUTPUT
+
+ts_log "Julian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -3sj $MYTIME
+fi
+$TS_CMD_CAL -3sj $MYTIME >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/cal/year b/tests/ts/cal/year
new file mode 100755
index 0000000..e1d4d95
--- /dev/null
+++ b/tests/ts/cal/year
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="year"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+set -o pipefail
+
+USETERM=$( ts_has_option "useterm" "$*" )
+MYTIME="29 11 2006"
+
+[ "$USETERM" == "yes" ] && TS_VERBOSE="yes"
+ts_log ""
+
+ts_log "Gregorian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -ym $MYTIME
+fi
+$TS_CMD_CAL -ym $MYTIME >> $TS_OUTPUT
+
+ts_log "Gregorian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -ys $MYTIME
+fi
+$TS_CMD_CAL -ys $MYTIME >> $TS_OUTPUT
+
+
+ts_log "Julian - Monday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -ymj $MYTIME
+fi
+$TS_CMD_CAL -ymj $MYTIME >> $TS_OUTPUT
+
+ts_log "Julian - Sunday-based week"
+if [ "$USETERM" == "yes" ]; then
+ $TS_CMD_CAL -ysj $MYTIME
+fi
+$TS_CMD_CAL -ysj $MYTIME >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/col/multibyte b/tests/ts/col/multibyte
new file mode 100755
index 0000000..7001029
--- /dev/null
+++ b/tests/ts/col/multibyte
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="multibyte input"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+cat $TS_SELF/multibyte.data | $TS_CMD_COL > /dev/null 2> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/col/multibyte.data b/tests/ts/col/multibyte.data
new file mode 100644
index 0000000..b203afd
--- /dev/null
+++ b/tests/ts/col/multibyte.data
@@ -0,0 +1 @@
+Dateiname der Versandhülle
diff --git a/tests/ts/colrm/rm2-2 b/tests/ts/colrm/rm2-2
new file mode 100755
index 0000000..a8419cb
--- /dev/null
+++ b/tests/ts/colrm/rm2-2
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2011 Sami Kerola <kerolasa@iki.fi>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="basic check"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+printf "a b\nc\td\nef\b\tg\n" | $TS_CMD_COLRM 2 2 > $TS_OUTPUT 2>&1
+
+ts_finalize
diff --git a/tests/ts/column/fillrow b/tests/ts/column/fillrow
new file mode 100755
index 0000000..172e858
--- /dev/null
+++ b/tests/ts/column/fillrow
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2011 Sami Kerola <kerolasa@iki.fi>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="fill row"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+cd $TS_OUTDIR
+
+$TS_CMD_COLUMN -x -c 50 $TS_SELF/input >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/column/input b/tests/ts/column/input
new file mode 100644
index 0000000..d3ea4a8
--- /dev/null
+++ b/tests/ts/column/input
@@ -0,0 +1,10 @@
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
+0 1 2 3 4 5
diff --git a/tests/ts/column/multi-file b/tests/ts/column/multi-file
new file mode 100755
index 0000000..654a1da
--- /dev/null
+++ b/tests/ts/column/multi-file
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2011 Sami Kerola <kerolasa@iki.fi>
+# 2011 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="multiple files"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+cd $TS_OUTDIR
+
+$TS_CMD_COLUMN -x -c 50 $TS_SELF/input \
+ $TS_SELF/input \
+ $TS_SELF/input >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/column/separator_table b/tests/ts/column/separator_table
new file mode 100755
index 0000000..fe6f83c
--- /dev/null
+++ b/tests/ts/column/separator_table
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2011 Sami Kerola <kerolasa@iki.fi>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="separator & table"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+cd $TS_OUTDIR
+
+$TS_CMD_COLUMN -s 2 -t $TS_SELF/input >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/cramfs/cramfs-big.img b/tests/ts/cramfs/cramfs-big.img
new file mode 100644
index 0000000..2ea516e
--- /dev/null
+++ b/tests/ts/cramfs/cramfs-big.img
Binary files differ
diff --git a/tests/ts/cramfs/cramfs-little.img b/tests/ts/cramfs/cramfs-little.img
new file mode 100644
index 0000000..a1dfab5
--- /dev/null
+++ b/tests/ts/cramfs/cramfs-little.img
Binary files differ
diff --git a/tests/ts/cramfs/doubles b/tests/ts/cramfs/doubles
new file mode 100755
index 0000000..ed4e4aa
--- /dev/null
+++ b/tests/ts/cramfs/doubles
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="mkfs doubles"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+ORIGPWD=$(pwd)
+IMAGE_NAME="${TS_TESTNAME}.img"
+IMAGE_PATH="$TS_OUTDIR/$IMAGE_NAME"
+IMAGE_SRC="$TS_OUTDIR/${TS_TESTNAME}-data"
+
+ts_log "create mountpoint dir"
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+mkdir -p $IMAGE_SRC
+echo hello > $IMAGE_SRC/a
+echo hello > $IMAGE_SRC/b
+
+ts_log "create cramfs image"
+$TS_CMD_MKCRAMFS $IMAGE_SRC $IMAGE_PATH 2>&1 >> $TS_OUTPUT
+[ -s "$IMAGE_PATH" ] || ts_die "Cannot create $IMAGE_PATH"
+
+$TS_CMD_MOUNT -r $IMAGE_PATH $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+# check it
+ts_is_mounted $TS_MOUNTPOINT || ts_die "Cannot find $TS_MOUNTPOINT in /proc/mounts"
+
+ts_log "umount the image"
+$TS_CMD_UMOUNT $TS_MOUNTPOINT
+ts_finalize
+
diff --git a/tests/ts/cramfs/fsck-endianness b/tests/ts/cramfs/fsck-endianness
new file mode 100755
index 0000000..6a98c9e
--- /dev/null
+++ b/tests/ts/cramfs/fsck-endianness
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="fsck endianness"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+($TS_CMD_FSCKCRAMFS -x TEST_X_FLAG 2>&1 || true) \
+ | grep -q "compiled without -x support" && ts_skip "fsck: compiled without -x support"
+
+IMAGE_LITTLE="$TS_SELF/cramfs-little.img" #Known good little endian image
+IMAGE_BIG="$TS_SELF/cramfs-big.img" #Known good big endian image
+
+IMAGE_CREATED="$TS_OUTDIR/${TS_TESTNAME}-cramfs.img" #Image created during the test and compared against the known images.
+IMAGE_DATA="$TS_OUTDIR/${TS_TESTNAME}-data"
+
+test_image() {
+ local FROM_ENDIANNESS="$1"; shift
+ local TO_ENDIANNESS="$1"; shift
+ local FROM_IMAGE="$1"; shift
+
+ rm -rf "$IMAGE_DATA"
+ ts_log "extract from $FROM_ENDIANNESS endian"
+ $TS_CMD_FSCKCRAMFS -v -x $IMAGE_DATA $FROM_IMAGE | head -n1 | cut -d" " -f4 2>&1 >> $TS_OUTPUT
+
+ ts_log "create $TO_ENDIANNESS endian"
+ $TS_CMD_MKCRAMFS -N "$TO_ENDIANNESS" "$IMAGE_DATA" "$IMAGE_CREATED" 2>&1 >> $TS_OUTPUT
+
+ md5sum $IMAGE_CREATED | cut -d" " -f1 >> $TS_OUTPUT
+
+ rm "$IMAGE_CREATED"
+}
+
+test_image "little" "big" "$IMAGE_LITTLE"
+test_image "big" "little" "$IMAGE_BIG"
+
+ts_finalize
+
diff --git a/tests/ts/cramfs/mkfs b/tests/ts/cramfs/mkfs
new file mode 100755
index 0000000..db9b08c
--- /dev/null
+++ b/tests/ts/cramfs/mkfs
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="mkfs checksums"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+ORIGPWD=$(pwd)
+IMAGE_NAME="${TS_TESTNAME}-loop.img"
+IMAGE_PATH="$TS_OUTDIR/$IMAGE_NAME"
+IMAGE_SRC="$TS_OUTDIR/${TS_TESTNAME}-data"
+LABEL="testCramfs"
+
+ts_log "create mountpoint dir"
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_log "generate data"
+if [ ! -d "$IMAGE_SRC" ]; then
+ mkdir -p $IMAGE_SRC
+ for d in `seq 0 110`; do
+ DIRNAME="$IMAGE_SRC/$(printf "dir-%03d" $d)"
+ mkdir -p $DIRNAME
+ for f in `seq 0 10`; do
+ FILENAME="$DIRNAME/$(printf "data.%03d" $f)"
+ printf "data in %03d-%03d" $d $f >> $FILENAME
+ done
+ done
+fi
+
+cd $IMAGE_SRC
+
+ts_log "list checksums from original data"
+find -type f -exec md5sum {} \; | sort >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "create cramfs image"
+$TS_CMD_MKCRAMFS -n $LABEL $IMAGE_SRC $IMAGE_PATH 2>&1 >> $TS_OUTPUT
+[ -s "$IMAGE_PATH" ] || ts_die "Cannot create $IMAGE_PATH"
+
+cd $TS_OUTDIR
+
+ts_log "count MD5 from the image"
+md5sum $IMAGE_NAME 2>&1 | sort >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "create loop device from image"
+DEVICE=$($TS_CMD_LOSETUP --show -f $IMAGE_PATH)
+
+ts_log "check the image"
+ts_device_has "TYPE" "cramfs" $DEVICE
+[ "$?" == "0" ] || ts_die "Cannot find cramfs on $DEVICE" $DEVICE
+
+ts_log "mount the image"
+$TS_CMD_MOUNT -r -L $LABEL $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+# check it
+ts_is_mounted $DEVICE || ts_die "Cannot find $DEVICE in /proc/mounts" $DEVICE
+
+cd $TS_MOUNTPOINT
+
+ts_log "list the image"
+ls -laR --time-style=long-iso . >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "list checksums from new data"
+find . -type f -exec md5sum {} \; | sort >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+cd $ORIGPWD
+
+ts_log "umount the image"
+$TS_CMD_UMOUNT $DEVICE
+$TS_CMD_LOSETUP -d $DEVICE 2>&1 >> $TS_OUTPUT
+ts_finalize
+
diff --git a/tests/ts/cramfs/mkfs-endianness b/tests/ts/cramfs/mkfs-endianness
new file mode 100755
index 0000000..68237c0
--- /dev/null
+++ b/tests/ts/cramfs/mkfs-endianness
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="mkfs endianness"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+IMAGE_DATA="$TS_OUTDIR/${TS_TESTNAME}-data"
+IMAGE_CREATED="$TS_OUTDIR/${TS_TESTNAME}-cramfs.img" #Image created during the test and compared against the known images.
+
+test_image() {
+ local TO_ENDIANNESS="$1"; shift
+ ts_log "create $TO_ENDIANNESS endian"
+
+ $TS_CMD_MKCRAMFS -N "$TO_ENDIANNESS" "$IMAGE_DATA" "$IMAGE_CREATED" 2>&1 >> $TS_OUTPUT
+
+ md5sum $IMAGE_CREATED | cut -d" " -f1 >> $TS_OUTPUT
+
+ rm "$IMAGE_CREATED"
+}
+
+#generate test data
+mkdir -p $IMAGE_DATA/dirA/dirB
+yes "Testing cramfs 1234567890 Endianness check 1234567890 Endianness check" \
+ | dd of=$IMAGE_DATA/dirA/dirB/a bs=512 count=1 &> /dev/null
+yes "Testing cramfs 1234567890 Endianness check 1234567890 Endianness check" \
+ | dd of=$IMAGE_DATA/dirA/dirB/b bs=512 count=30 &> /dev/null
+
+#perform tests for both endians
+test_image "little"
+test_image "big"
+
+ts_finalize
+
diff --git a/tests/ts/eject/umount b/tests/ts/eject/umount
new file mode 100755
index 0000000..3081c1f
--- /dev/null
+++ b/tests/ts/eject/umount
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="umount"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+#
+# Note that eject --force is required because scsi_debug is
+# not removable device.
+#
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+rmmod scsi_debug &> /dev/null
+
+function init_device {
+ modprobe scsi_debug dev_size_mb=100
+ [ "$?" == 0 ] || ts_die "Cannot init device"
+
+ sleep 3
+
+ DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+ [ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+ echo "/dev/${DEVNAME}"
+
+}
+
+function init_partitions {
+ local dev=$1
+
+ ts_log "Create partitions"
+ $TS_CMD_FDISK $dev >> /dev/null 2>&1 <<EOF
+n
+p
+1
+
++50M
+n
+p
+2
+
+
+p
+w
+EOF
+ sleep 1
+ mkfs.ext2 -q ${dev}1
+ mkfs.ext2 -q ${dev}2
+}
+
+function deinit_device {
+ sleep 3
+ rmmod scsi_debug
+}
+
+
+ts_init_subtest "by-disk"
+DEVICE=$(init_device)
+$TS_CMD_EJECT --force $DEVICE && ts_log "Success"
+deinit_device
+ts_finalize_subtest
+
+ts_init_subtest "by-disk-mounted"
+DEVICE=$(init_device)
+mkfs.ext2 -q -F $DEVICE
+mkdir -p $TS_MOUNTPOINT
+mount $DEVICE $TS_MOUNTPOINT
+sleep 1
+$TS_CMD_EJECT --force $DEVICE && ts_log "Success"
+deinit_device
+ts_finalize_subtest
+
+
+ts_init_subtest "by-disk-mounted-partition"
+DEVICE=$(init_device)
+init_partitions $DEVICE
+mkdir -p ${TS_MOUNTPOINT}1
+mkdir -p ${TS_MOUNTPOINT}2
+mount ${DEVICE}1 ${TS_MOUNTPOINT}1
+mount ${DEVICE}2 ${TS_MOUNTPOINT}2
+$TS_CMD_EJECT --force $DEVICE && ts_log "Success"
+deinit_device
+ts_finalize_subtest
+
+
+ts_init_subtest "by-partition"
+DEVICE=$(init_device)
+init_partitions $DEVICE
+$TS_CMD_EJECT --force ${DEVICE}1 && ts_log "Success"
+deinit_device
+ts_finalize_subtest
+
+
+ts_init_subtest "by-partition-mounted"
+DEVICE=$(init_device)
+init_partitions $DEVICE
+mkdir -p ${TS_MOUNTPOINT}1
+mkdir -p ${TS_MOUNTPOINT}2
+mount ${DEVICE}1 ${TS_MOUNTPOINT}1
+mount ${DEVICE}2 ${TS_MOUNTPOINT}2
+$TS_CMD_EJECT --force ${DEVICE}1 && ts_log "Success"
+deinit_device
+ts_finalize_subtest
+
+
+ts_finalize
diff --git a/tests/ts/fdisk/align-512-4K b/tests/ts/fdisk/align-512-4K
new file mode 100755
index 0000000..3d93022
--- /dev/null
+++ b/tests/ts/fdisk/align-512-4K
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+
+#
+# Test alignment for 512/512 disk *with* topology -- aligned to optimal
+# I/O size (32KiB)
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="align 512/4K"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=50 sector_size=512 physblk_exp=3
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+n
+p
+3
+
++10M
+n
+e
+
+
+n
+
++5M
+n
+
++5M
+n
+
+
+p
+w
+q
+EOF
+
+ts_log "Alignment offsets:"
+cat /sys/block/${DEVNAME}/${DEVNAME}{1,2,3,4,5,6,7}/alignment_offset >> $TS_OUTPUT 2>&1
+
+sleep 3
+rmmod scsi_debug
+
+ts_fdisk_clean
+
+ts_finalize
diff --git a/tests/ts/fdisk/align-512-4K-63 b/tests/ts/fdisk/align-512-4K-63
new file mode 100755
index 0000000..7a8e95c
--- /dev/null
+++ b/tests/ts/fdisk/align-512-4K-63
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+
+#
+# Test alignment for 512/512 disk *with* topology -- aligned to optimal
+# I/O size (32KiB)
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="align 512/4K +alignment_offset"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=50 sector_size=512 physblk_exp=3 lowest_aligned=7
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+n
+p
+3
+
++10M
+n
+e
+
+
+n
+
++5M
+n
+
++5M
+n
+
+
+p
+w
+q
+EOF
+
+ts_log "Alignment offsets:"
+cat /sys/block/${DEVNAME}/${DEVNAME}{1,2,3,4,5,6,7}/alignment_offset >> $TS_OUTPUT 2>&1
+
+sleep 3
+rmmod scsi_debug
+
+ts_fdisk_clean
+
+ts_finalize
diff --git a/tests/ts/fdisk/align-512-4K-md b/tests/ts/fdisk/align-512-4K-md
new file mode 100755
index 0000000..f55ee22
--- /dev/null
+++ b/tests/ts/fdisk/align-512-4K-md
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+
+#
+# Test alignment for 512/512 disk *with* topology -- aligned to optimal
+# I/O size (32KiB)
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="align 512/4K +MD"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+[ -x /sbin/mdadm ] || ts_skip "missing mdadm"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=50 sector_size=512 physblk_exp=3
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++20M
+n
+p
+2
+
+
+p
+w
+q
+EOF
+
+ts_log "Alignment offsets:"
+cat /sys/block/${DEVNAME}/${DEVNAME}{1,2}/alignment_offset >> $TS_OUTPUT 2>&1
+
+sleep 3
+MD_DEVNAME=md8
+MD_DEVICE=/dev/${MD_DEVNAME}
+
+/sbin/mdadm -q -S ${MD_DEVICE} &> /dev/null
+/sbin/mdadm -q --create ${MD_DEVICE} --metadata=0.90 --chunk=64 \
+ --level=0 --raid-devices=2 ${DEVICE}1 ${DEVICE}2 >> $TS_OUTPUT 2>&1
+
+ts_log "Create partitions (MD)"
+$TS_CMD_FDISK ${MD_DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+p
+w
+q
+EOF
+
+ts_log "Alignment offsets (MD):"
+cat /sys/block/${MD_DEVNAME}/${MD_DEVNAME}p{1,2}/alignment_offset >> $TS_OUTPUT 2>&1
+
+sleep 3
+/sbin/mdadm -q -S ${MD_DEVICE} >> $TS_OUTPUT 2>&1
+rmmod scsi_debug
+
+ts_fdisk_clean
+
+ts_finalize
diff --git a/tests/ts/fdisk/align-512-512 b/tests/ts/fdisk/align-512-512
new file mode 100755
index 0000000..82a6268
--- /dev/null
+++ b/tests/ts/fdisk/align-512-512
@@ -0,0 +1,70 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+#
+# Test default 1MiB (2048 sectors) alignment for 512/512 disk *without*
+# topology.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="align 512/512"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+DEVICE=$(ts_device_init 50)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+n
+p
+3
+
++10M
+n
+e
+
+
+n
+
++5M
+n
+
++5M
+n
+
+
+p
+q
+EOF
+
+ts_device_deinit $DEVICE
+
+ts_fdisk_clean
+
+ts_finalize
diff --git a/tests/ts/fdisk/align-512-512-topology b/tests/ts/fdisk/align-512-512-topology
new file mode 100755
index 0000000..ec10fd8
--- /dev/null
+++ b/tests/ts/fdisk/align-512-512-topology
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+
+#
+# Test alignment for 512/512 disk *with* topology -- aligned to optimal
+# I/O size (32KiB)
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="align 512/512 +topology"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=50 sector_size=512
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> $TS_OUTPUT 2>&1 <<EOF
+n
+p
+1
+
++10M
+n
+p
+2
+
++10M
+n
+p
+3
+
++10M
+n
+e
+
+
+n
+
++5M
+n
+
++5M
+n
+
+
+p
+w
+q
+EOF
+
+ts_log "Alignment offsets:"
+cat /sys/block/${DEVNAME}/${DEVNAME}{1,2,3,4,5,6,7}/alignment_offset >> $TS_OUTPUT 2>&1
+
+sleep 3
+rmmod scsi_debug
+
+ts_fdisk_clean
+
+ts_finalize
diff --git a/tests/ts/fdisk/id b/tests/ts/fdisk/id
new file mode 100755
index 0000000..2c76f42
--- /dev/null
+++ b/tests/ts/fdisk/id
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MBR - id"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+FDISK_CMD_ID1="x\ni\n0x1\nr\nw\n"
+FDISK_CMD_ID2="x\ni\n0x2\nr\nw\n"
+
+ts_log "Initialize empty image"
+TEST_IMAGE_NAME=$(ts_image_init 10)
+
+ts_log "Create MBR with ID=0x1"
+echo -e "${FDISK_CMD_ID1}" | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+$TS_CMD_FDISK -l ${TEST_IMAGE_NAME} | grep identifier >> $TS_OUTPUT
+
+ts_log "Create MBR with ID=0x2"
+echo -e "${FDISK_CMD_ID2}" | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+$TS_CMD_FDISK -l ${TEST_IMAGE_NAME} | grep identifier >> $TS_OUTPUT
+
+ts_finalize
diff --git a/tests/ts/fdisk/mbr-dos-mode b/tests/ts/fdisk/mbr-dos-mode
new file mode 100755
index 0000000..07b2006
--- /dev/null
+++ b/tests/ts/fdisk/mbr-dos-mode
@@ -0,0 +1,135 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+#
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MBR - dos mode"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+# cmd to change number of cylinders to 1024 and changes system id to 0x1
+FDISK_CMD_INIT="x\nc\n1024\ni\n0x1\nr\n"
+FDISK_CMD_WRITE_CLOSE="w\nq\n"
+FDISK_CMD_CREATE_DOSLABEL="o\n" #create dos label
+FDISK_CMD_CREATE_PRIMARY="n\np\n1\n\n+1M\n" # create primary partition 1 of size 1MB
+FDISK_CMD_CHANGE_PARTTYPE="t\nbf\n" # change partition type to "bf - solaris", this requires that there is only one partition to change
+FDISK_CMD_SET_ACTIVE="a\n1\n" # set first partition active
+FDISK_CMD_CREATE_EXTENDED="n\ne\n2\n\n+10\n" # create extended partition 2 of size 11 cylinders
+FDISK_CMD_CREATE_LOGICAL="n\nl\n\n+1\n" # create next logical partition of size 2 cyl
+FDISK_CMD_DELETE_LOGICALS="d\n6\nd\n5\nd\n6\d5\n" # delete middle, head, tail, last partitions
+FDISK_CMD_DELETE_PRIMARY="d\n1\n" # delete first primary
+FDISK_CMD_DELETE_EXTENDED="d\n2\n" # delete second primary
+
+#set -x
+
+function print_layout {
+ echo -ne "\n---layout----------" >> $TS_OUTPUT
+ $TS_CMD_FDISK -c=dos -u=cylinders -l ${TEST_IMAGE_NAME} | \
+ sed 's/^.*\.img/__ts_dev__/g;
+ s/^[[:blank:]]*Device Boot/ Device Boot/g' >> $TS_OUTPUT 2>&1
+ echo -ne "-------------------\n\n" >> $TS_OUTPUT
+}
+
+#
+# Note that fdisk will enlarge the disk image (to 57MB) because the logical
+# partitions are out of the original range (10MB).
+#
+ts_log "Initialize empty image"
+TEST_IMAGE_NAME=$(ts_image_init 10)
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+# need to run init twice, to change system ID after new label, otherwise system
+# ID will be random and will screw up md5's
+ts_log "Create new DOS partition table"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_DOSLABEL}${FDISK_CMD_INIT}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Set partition type"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CHANGE_PARTTYPE}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Set primary partition active"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_SET_ACTIVE}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Re-create primary partition"
+echo -e "${FDISK_CMD_INIT}d\n${FDISK_CMD_CREATE_PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create extended partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_EXTENDED}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create logical partitions"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete logical partitions"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_LOGICALS}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create another logical partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_PRIMARY}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete extended partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_EXTENDED}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_finalize
diff --git a/tests/ts/fdisk/mbr-nondos-mode b/tests/ts/fdisk/mbr-nondos-mode
new file mode 100755
index 0000000..119d2c9
--- /dev/null
+++ b/tests/ts/fdisk/mbr-nondos-mode
@@ -0,0 +1,137 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="MBR - non-dos mode"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+# cmd to changes system id to 0x1
+FDISK_CMD_INIT="x\ni\n0x1\nr\n"
+FDISK_CMD_WRITE_CLOSE="w\nq\n"
+FDISK_CMD_CREATE_DOSLABEL="o\n" #create dos label
+FDISK_CMD_CREATE_1PRIMARY="n\np\n\n\n+3M\n" # create primary partition of size 3MiB
+FDISK_CMD_CREATE_2PRIMARY="n\np\n\n\n+2M\n" # create primary partition of size 2MiB
+FDISK_CMD_SET_ACTIVE="a\n1\n" # set first partition active
+FDISK_CMD_CREATE_EXTENDED="n\ne\n\n\n\n" # create extended partition
+FDISK_CMD_CREATE_LOGICAL="n\nl\n\n+2M\n" # create next logical partition of size 10 sectors
+FDISK_CMD_DELETE_LOGICALS="d\n6\nd\n5\nd\n6\d5\n" # delete middle, head, tail, last partitions
+FDISK_CMD_DELETE_1PRIMARY="d\n1\n" # delete first primary
+FDISK_CMD_DELETE_2PRIMARY="d\n2\n" # delete first primary
+FDISK_CMD_DELETE_EXTENDED="d\n3\n" # delete second primary
+
+function print_layout {
+ echo -ne "\n---layout----------" >> $TS_OUTPUT
+ $TS_CMD_FDISK -l ${TEST_IMAGE_NAME} | \
+ sed 's/^.*\.img/__ts_dev__/g;
+ s/^[[:blank:]]*Device Boot/ Device Boot/g' >> $TS_OUTPUT 2>&1
+ echo -ne "-------------------\n\n" >> $TS_OUTPUT
+}
+
+#set -x
+
+ts_log "Initialize empty image"
+TEST_IMAGE_NAME=$(ts_image_init 20) # 20 MiB
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+# need to run init twice, to change system ID after new label, otherwise system
+# ID will be random and will screw up md5's
+ts_log "Create new DOS partition table"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_DOSLABEL}${FDISK_CMD_INIT}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create 1st primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_1PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Set primary partition active"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_SET_ACTIVE}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Re-create 1st primary partition"
+echo -e "${FDISK_CMD_INIT}d\n${FDISK_CMD_CREATE_1PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create 2nd primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_2PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create extended partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_EXTENDED}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create logical partitions"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete logical partitions"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_LOGICALS}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Create another logical partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_CREATE_LOGICAL}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_1PRIMARY}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete primary partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_2PRIMARY}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_log "Delete extended partition"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETE_EXTENDED}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK -c=dos -u=cylinders ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+print_layout
+
+ts_finalize
diff --git a/tests/ts/fdisk/oddinput b/tests/ts/fdisk/oddinput
new file mode 100755
index 0000000..799eca0
--- /dev/null
+++ b/tests/ts/fdisk/oddinput
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="invalid input tests"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+#set -x
+
+ts_log "Initialize empty image"
+TEST_IMAGE_NAME=$(ts_image_init 10)
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Empty image listing" # this should report empty partition table
+# TEST_IMAGE_NAME has absolute path, and is by definition different on each computer, we need to sed it away
+$TS_CMD_FDISK -c=dos -u=cylinders -l ${TEST_IMAGE_NAME} 2>&1 | sed -e "s/${TEST_IMAGE_NAME//\//\\/}/testimage/" >> $TS_OUTPUT
+
+ts_log "Nonexistant file" # this originally does absolutely nothing
+$TS_CMD_FDISK -c=dos -u=cylinders -l _a_file_that_does_not_exist_ >> $TS_OUTPUT 2>&1
+
+ts_log "Too small file" # same here
+echo "This file is too small" >> oddinput.toosmall
+$TS_CMD_FDISK -c=dos -u=cylinders -l oddinput.toosmall >> $TS_OUTPUT 2>&1
+rm oddinput.toosmall
+ts_finalize
diff --git a/tests/ts/fdisk/sunlabel b/tests/ts/fdisk/sunlabel
new file mode 100755
index 0000000..e1ce4f4
--- /dev/null
+++ b/tests/ts/fdisk/sunlabel
@@ -0,0 +1,74 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="sunlabel tests"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+FDISK_CMD_INIT="s\n1\n1\n1024\n" # create new sunlabel
+FDISK_CMD_WRITE_CLOSE="w\nq\n"
+FDISK_CMD_DELETEALL="d\n1\nd\n2\nd\n3\nd\n4\nd\n5\nd\n6\nd\n7\nd\n8\n" # delete all partitions
+
+FDISK_CMD_CREATE_PRIMARY="n\n1\n0\n128\n" # create first partition, cylinders 0 through 128
+FDISK_CMD_TOGGLE_READONLY="a\n1\n" # sets first partition as read-only
+FDISK_CMD_TOGGLE_MOUNTABLE="c\n1\n" # sets first partition as mountable
+FDISK_CMD_CHANGE_SYSID="t\n1\n4\n" # changes sysid to 4 (SunOS usr)
+FDISK_CMD_CREATE_SECONDARY="n\n2\n128\n\n" # create secondary partition cylinders 128 to the end of disk
+
+#set -x
+
+ts_log "Initialize empty image"
+TEST_IMAGE_NAME=$(ts_image_init 10)
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Create new SUN partition table"
+echo -e "${FDISK_CMD_INIT}${FDISK_CMD_DELETEALL}${FDISK_CMD_WRITE_CLOSE}" \
+ | $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Create first partition"
+echo -e "${FDISK_CMD_CREATE_PRIMARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Set partition sysid"
+echo -e "${FDISK_CMD_CHANGE_SYSID}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Set first partition readonly"
+echo -e "${FDISK_CMD_TOGGLE_READONLY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Set first partition mountable"
+echo -e "${FDISK_CMD_TOGGLE_MOUNTABLE}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Create second partition"
+echo -e "${FDISK_CMD_CREATE_SECONDARY}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_log "Delete all partitions"
+echo -e "${FDISK_CMD_DELETEALL}${FDISK_CMD_WRITE_CLOSE}" | \
+ $TS_CMD_FDISK ${TEST_IMAGE_NAME} &> /dev/null
+ts_image_md5sum >> $TS_OUTPUT 2>&1
+
+ts_finalize
diff --git a/tests/ts/fsck/ismounted b/tests/ts/fsck/ismounted
new file mode 100755
index 0000000..6b7f0f7
--- /dev/null
+++ b/tests/ts/fsck/ismounted
@@ -0,0 +1,45 @@
+#!/bin/bash
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="is mounted"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+> $TS_OUTPUT
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "ext3" $DEVICE || ts_die "Cannot find ext3 on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+$TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT >> $TS_OUTPUT 2>&1
+
+# test by ismounted.c
+$TS_HELPER_ISMOUNTED $DEVICE | awk '{print $1}' >> $TS_OUTPUT 2>&1
+
+$TS_CMD_UMOUNT $DEVICE || ts_die "Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_finalize
diff --git a/tests/ts/hwclock/systohc b/tests/ts/hwclock/systohc
new file mode 100755
index 0000000..401ee93
--- /dev/null
+++ b/tests/ts/hwclock/systohc
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="system to hw"
+NTP_SERVER="0.fedora.pool.ntp.org"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+PATH='/usr/sbin:/usr/bin:/sbin:/bin'
+type ntpdate >/dev/null 2>&1 || ts_skip "cannot find ntpdate command"
+
+set -o pipefail
+
+# sync with server
+(ntpdate $NTP_SERVER | sed "s/^.*offset \([0-9.]*\) sec/\1/g") &> /dev/null
+[ "$?" == "1" ] && ts_skip "cannot sync with $NTP_SERVER"
+
+# sync again and check difference
+OFFSET=$( ntpdate $NTP_SERVER 2> /dev/null | sed "s/^.*offset [\-]*\([0-9.]*\) sec/\1/g" )
+[ "$?" == "1" ] && ts_skip "cannot sync with $NTP_SERVER (2nd attempt)"
+
+DIFF=$( echo "$OFFSET > 1" | bc )
+[ "$DIFF" == "1" ] && ts_skip "diff between systime and NTP is greated than 1 second"
+
+# call hwclock
+for i in `seq 0 10`; do
+ #echo "sync #$i"
+ $TS_CMD_HWCLOCK --systohc
+ $TS_CMD_HWCLOCK --hctosys
+done
+
+# sync with NTP and check new difference
+OFFSET=$( ntpdate $NTP_SERVER 2> /dev/null | sed "s/^.*offset [\-]*\([0-9.]*\) sec/\1/g" )
+[ "$?" == "1" ] && ts_skip "cannot sync with $NTP_SERVER (3rd attempt)"
+
+DIFF=$( echo "$OFFSET > 1" | bc )
+[ "$DIFF" == "1" ] && ts_failed "offset is $OFFSET"
+
+ts_ok "offset is $OFFSET"
+
diff --git a/tests/ts/ipcs/functions.sh b/tests/ts/ipcs/functions.sh
new file mode 100644
index 0000000..24ea445
--- /dev/null
+++ b/tests/ts/ipcs/functions.sh
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+PAGE_SIZE=$($TS_HELPER_SYSINFO pagesize)
+
+# kernel files
+IPCS_PROCFILES=(
+ /proc/sys/kernel/shmmni
+ /proc/sys/kernel/shmall
+ /proc/sys/kernel/shmmax
+)
+
+# raw data converted to ipcs-like format
+# shmmni = same
+# shmall = from pages to KBytes
+# shmmax = from bytes to KBytes
+#
+IPCS_KERNEL_CMD=(
+ "cat /proc/sys/kernel/shmmni"
+ "echo \$(cat /proc/sys/kernel/shmall) / 1024 \* $PAGE_SIZE | bc -l | sed 's/\..*//'"
+ "echo \$(cat /proc/sys/kernel/shmmax) / 1024 | bc -l | sed 's/\..*//'"
+)
+
+# data from the ipcs command
+IPCS_CMD=(
+ "$TS_CMD_IPCS -m -l | awk '/max number of segments/ { print \$6 }'"
+ "$TS_CMD_IPCS -m -l | awk '/max total shared memory/ { print \$7 }'"
+ "$TS_CMD_IPCS -m -l | awk '/max seg size/ { print \$6 }'"
+)
+
+
+# The linux kernel accepts ULONG_MAX, but this value is same like ULLONG_MAX on
+# 64-bit archs. So the ipcs command has to always overflow on 64-bit archs when
+# shmall (=num of pages!) is same or almost same like ULONG_MAX. This is reason
+# why we for the test uses 32-bit limits on all archs.
+#
+# (Don't worry that 64-bit ULONG_MAX makes ipcs useless ...
+# ... it's a problem for admins who want to use 75557863725TB of RAM for shm)
+#
+IPCS_LIMITS=(
+ $($TS_HELPER_SYSINFO INT_MAX)
+ $($TS_HELPER_SYSINFO ULONG_MAX32)
+ $($TS_HELPER_SYSINFO ULONG_MAX32)
+)
+
+# list of indexes = 0..(sizeof Array - 1)
+IPCS_IDX=$(seq 0 $(( ${#IPCS_PROCFILES[*]} - 1 )))
+
+# checker
+function ipcs_limits_check {
+ for i in $IPCS_IDX; do
+ echo -n ${IPCS_PROCFILES[$i]}
+
+ a=$(eval ${IPCS_KERNEL_CMD[$i]})
+ b=$(eval ${IPCS_CMD[$i]})
+
+ #echo -n " RAW: "
+ #cat ${IPCS_PROCFILES[$i]}
+ #echo "CMD: ${ICPS_KERNEL_CMD[$i]}"
+
+ if [ x"$a" == x"$b" ]; then
+ echo " OK"
+ else
+ echo " kernel=$a, ipcs=$b"
+ fi
+ done
+}
+
diff --git a/tests/ts/ipcs/headers b/tests/ts/ipcs/headers
new file mode 100755
index 0000000..99b82a3
--- /dev/null
+++ b/tests/ts/ipcs/headers
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="headers"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+ts_log "test: shm headers"
+$TS_CMD_IPCS -m -t | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -m -p | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -m -c | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -m -l | grep "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -m -u | grep "^---" >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "test: mesg headers"
+$TS_CMD_IPCS -q -t | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -q -p | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -q -c | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -q -l | grep "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -q -u | grep "^---" >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "test: sem headers"
+$TS_CMD_IPCS -s -t | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -s -p | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -s -c | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -s -l | grep "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -s -u | grep "^---" >> $TS_OUTPUT
+echo >> $TS_OUTPUT
+
+ts_log "test: all headers"
+$TS_CMD_IPCS -a | grep --after-context=1 "^---" >> $TS_OUTPUT
+
+$TS_CMD_IPCS -a -t | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -a -p | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -a -c | grep --after-context=1 "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -a -l | grep "^---" >> $TS_OUTPUT
+$TS_CMD_IPCS -a -u | grep "^---" >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/ipcs/limits b/tests/ts/ipcs/limits
new file mode 100755
index 0000000..ed6e084
--- /dev/null
+++ b/tests/ts/ipcs/limits
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="limits overflow"
+
+. $TS_TOPDIR/functions.sh
+
+ts_init "$*"
+ts_skip_nonroot
+
+. $TS_SELF/functions.sh
+
+ts_log "load original values"
+for i in $IPCS_IDX; do
+ SHM_ORG[$i]=$(cat ${IPCS_PROCFILES[$i]})
+done >> $TS_OUTPUT
+
+ts_log "check for difference between kernel and IPC"
+ipcs_limits_check >> $TS_OUTPUT
+
+ts_log "maximalize kernel setting"
+for i in $IPCS_IDX; do
+ echo ${IPCS_LIMITS[$i]} >> ${IPCS_PROCFILES[$i]}
+done >> $TS_OUTPUT
+
+ts_log "re-check for difference between kernel and IPC"
+ipcs_limits_check >> $TS_OUTPUT
+
+ts_log "write original values to kernel"
+for i in $IPCS_IDX; do
+ echo ${SHM_ORG[$i]} >> ${IPCS_PROCFILES[$i]}
+done >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/ipcs/limits2 b/tests/ts/ipcs/limits2
new file mode 100755
index 0000000..acb1749
--- /dev/null
+++ b/tests/ts/ipcs/limits2
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="basic limits"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+. $TS_SELF/functions.sh
+
+ts_log "check for difference between kernel and IPC"
+ipcs_limits_check >> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/libmount/context b/tests/ts/libmount/context
new file mode 100755
index 0000000..c8f2850
--- /dev/null
+++ b/tests/ts/libmount/context
@@ -0,0 +1,133 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="context"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+TESTPROG="$TS_HELPER_LIBMOUNT_CONTEXT"
+LABEL=libmount-test
+UUID=$(uuidgen)
+MOUNTPOINT="$TS_MOUNTPOINT"
+
+#set -x
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+ts_log "Init device"
+umount $MOUNTPOINT &> /dev/null
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=100
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> /dev/null 2>&1 <<EOF
+n
+p
+1
+
+
+w
+q
+EOF
+
+DEVICE="/dev/${DEVNAME}1"
+
+sleep 3
+
+ts_log "Create filesystem"
+mkfs.ext4 -L "$LABEL" -U "$UUID" $DEVICE &> /dev/null
+
+ts_log "Do tests..."
+
+export LIBMOUNT_MTAB=$TS_OUTPUT.mtab
+> $LIBMOUNT_MTAB
+
+
+ts_init_subtest "mount-by-devname"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+
+grep -q $DEVICE $LIBMOUNT_MTAB || \
+ echo "(by device) cannot find $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+ts_init_subtest "umount-by-devname"
+ts_valgrind $TESTPROG --umount $DEVICE >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB &&
+ echo "umount (device) failed: found $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+#exit 1
+
+ts_init_subtest "mount-by-label"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount LABEL="$LABEL" $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB || \
+ echo "(by label) cannot find $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+
+ts_init_subtest "umount-by-mountpoint"
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB && \
+ echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+
+ts_init_subtest "mount-by-uuid"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount UUID="$UUID" $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB || \
+ echo "(by uuid) cannot find $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB &&
+ echo "umount failed: found $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+
+ts_init_subtest "mount-flags"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount -o ro,noexec,nosuid,strictatime $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+$TS_CMD_FINDMNT --kernel $MOUNTPOINT -o VFS-OPTIONS -n >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB || \
+ echo "cannot find $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+
+ts_valgrind $TESTPROG --mount -o remount,rw $MOUNTPOINT >> $TS_OUTPUT 2>&1
+$TS_CMD_FINDMNT --kernel $MOUNTPOINT -o VFS-OPTIONS -n >> $TS_OUTPUT 2>&1
+
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_MTAB &&
+ echo "umount failed: found $DEVICE in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+
+ts_init_subtest "mount-loopdev"
+mkdir -p $MOUNTPOINT &> /dev/null
+img=$(ts_image_init)
+mkfs.ext3 -F $img &> /dev/null
+ts_valgrind $TESTPROG --mount -o loop $img $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $MOUNTPOINT $LIBMOUNT_MTAB || \
+ echo "(loopdev) cannot find $MOUNTPOINT in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $MOUNTPOINT $LIBMOUNT_MTAB &&
+ echo "umount failed: found $MOUNTPOINT in $LIBMOUNT_MTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+ts_log "...done."
+rmmod scsi_debug
+ts_finalize
diff --git a/tests/ts/libmount/context-utab b/tests/ts/libmount/context-utab
new file mode 100755
index 0000000..4c1d117
--- /dev/null
+++ b/tests/ts/libmount/context-utab
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="context (utab)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+TESTPROG="$TS_HELPER_LIBMOUNT_CONTEXT"
+LABEL=libmount-test
+UUID=$(uuidgen)
+MOUNTPOINT="$TS_MOUNTPOINT"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+ts_log "Init device"
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=260
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+
+ts_log "Create partitions"
+$TS_CMD_FDISK ${DEVICE} >> /dev/null 2>&1 <<EOF
+n
+p
+1
+
+
+w
+q
+EOF
+
+DEVICE="/dev/${DEVNAME}1"
+
+sleep 3
+
+ts_log "Create filesystem"
+mkfs.ext4 -L "$LABEL" -U "$UUID" $DEVICE &> /dev/null
+
+ts_log "Do tests..."
+
+export LIBMOUNT_MTAB=$TS_OUTPUT.mtab
+rm -f $LIBMOUNT_MTAB
+ln -s /proc/mounts $LIBMOUNT_MTAB
+
+export LIBMOUNT_UTAB=$TS_OUTPUT.utab
+rm -f $LIBMOUNT_UTAB
+> $LIBMOUNT_UTAB
+
+
+ts_init_subtest "mount-by-devname"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE /proc/mounts || \
+ echo "(by device) cannot find $DEVICE in /proc/mounts" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+sleep 1
+
+ts_init_subtest "umount-by-devname"
+ts_valgrind $TESTPROG --umount $DEVICE >> $TS_OUTPUT 2>&1
+grep -q $DEVICE /proc/mounts &&
+ echo "umount (device) failed: found $DEVICE in /proc/mounts" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+
+ts_init_subtest "mount-uhelper"
+mkdir -p $MOUNTPOINT &> /dev/null
+ts_valgrind $TESTPROG --mount -o uhelper=foo,rw LABEL="$LABEL" $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB || \
+ echo "(by label) cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+sleep 1
+
+ts_init_subtest "umount"
+ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+grep -q $DEVICE $LIBMOUNT_UTAB && \
+ echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ts_finalize_subtest
+
+if [ -x "/sbin/mkfs.btrfs" ]; then
+ ts_log "Create filesystem [btrfs]"
+ /sbin/mkfs.btrfs -L "$LABEL" $DEVICE &> /dev/null
+ mount -t btrfs $DEVICE $MOUNTPOINT &> /dev/null
+ /sbin/btrfsctl -S sub $MOUNTPOINT &> /dev/null
+ umount $MOUNTPOINT &> /dev/null
+
+ sleep 1
+
+ ts_init_subtest "mount-uhelper-subvol"
+ mkdir -p $MOUNTPOINT &> /dev/null
+ ts_valgrind $TESTPROG --mount -o uhelper=foo,rw,subvol=sub $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>&1
+ grep -q $DEVICE $LIBMOUNT_UTAB || \
+ echo "cannot find $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ ts_finalize_subtest
+
+ ts_log "All mount options (btrfs subvolume + utab) ---"
+ $TS_CMD_FINDMNT --mtab $MOUNTPOINT -o OPTIONS -n >> $TS_OUTPUT 2>&1
+ ts_log "---"
+
+ sleep 1
+
+ ts_init_subtest "umount-subvol"
+ ts_valgrind $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>&1
+ grep -q $DEVICE $LIBMOUNT_UTAB && \
+ echo "umount (mountpoint) failed: found $DEVICE in $LIBMOUNT_UTAB" >> $TS_OUTPUT 2>&1
+ ts_finalize_subtest
+fi
+
+ts_log "...done."
+rmmod scsi_debug
+ts_finalize
diff --git a/tests/ts/libmount/files/fstab b/tests/ts/libmount/files/fstab
new file mode 100644
index 0000000..a8f73bc
--- /dev/null
+++ b/tests/ts/libmount/files/fstab
@@ -0,0 +1,14 @@
+UUID=d3a8f783-df75-4dc8-9163-975a891052c0 / ext3 noatime,defaults 1 1
+UUID=fef7ccb3-821c-4de8-88dc-71472be5946f /boot ext3 noatime,defaults 1 2
+UUID=1f2aa318-9c34-462e-8d29-260819ffd657 swap swap defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
+devpts /dev/pts devpts gid=5,mode=620 0 0
+sysfs /sys sysfs defaults 0 0
+proc /proc proc defaults 0 0
+# this is comment
+/dev/mapper/foo /home/foo ext4 noatime,defaults 0 0
+
+foo.com:/mnt/share /mnt/remote nfs noauto
+//bar.com/gogogo /mnt/gogogo cifs user=SRGROUP/baby,noauto
+
+/dev/foo /any/foo/ auto defaults 0 0
diff --git a/tests/ts/libmount/files/fstab.broken b/tests/ts/libmount/files/fstab.broken
new file mode 100644
index 0000000..c79f026
--- /dev/null
+++ b/tests/ts/libmount/files/fstab.broken
@@ -0,0 +1,14 @@
+bug
+UUID=d3a8f783-df75-4dc8-9163-975a891052c0 / ext3 noatime,defaults 1 1
+UUID=fef7ccb3-821c-4de8-88dc-71472be5946f /boot ext3 noatime,defaults 1 2
+ UUID=1f2aa318-9c34-462e-8d29-260819ffd657 swap swap defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
+devpts /dev/pts devpts gid=5,mode=620
+ sysfs /sys sysfs defaults 0 0
+this is broken line with unexpected number of fields
+proc /proc proc defaults 0 0
+# this is comment
+/dev/mapper/foo /home/foo ext4 noatime,defaults 1
+
+foo.com:/mnt/share /mnt/remote nfs noauto
+//bar.com/gogogo /mnt/gogogo cifs user=SRGROUP/baby,noauto
diff --git a/tests/ts/libmount/files/mountinfo b/tests/ts/libmount/files/mountinfo
new file mode 100644
index 0000000..ff1e664
--- /dev/null
+++ b/tests/ts/libmount/files/mountinfo
@@ -0,0 +1,32 @@
+15 20 0:3 / /proc rw,relatime - proc /proc rw
+16 20 0:15 / /sys rw,relatime - sysfs /sys rw
+17 20 0:5 / /dev rw,relatime - devtmpfs udev rw,size=1983516k,nr_inodes=495879,mode=755
+18 17 0:10 / /dev/pts rw,relatime - devpts devpts rw,gid=5,mode=620,ptmxmode=000
+19 17 0:16 / /dev/shm rw,relatime - tmpfs tmpfs rw
+20 1 8:4 / / rw,noatime - ext3 /dev/sda4 rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+21 16 0:17 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime - tmpfs tmpfs rw,mode=755
+22 21 0:18 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+23 21 0:19 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuset
+24 21 0:20 / /sys/fs/cgroup/ns rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,ns
+25 21 0:21 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpu
+26 21 0:22 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct
+27 21 0:23 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,memory
+28 21 0:24 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,devices
+29 21 0:25 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,freezer
+30 21 0:26 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,net_cls
+31 21 0:27 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,blkio
+32 16 0:28 / /sys/kernel/security rw,relatime - autofs systemd-1 rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+33 17 0:29 / /dev/hugepages rw,relatime - autofs systemd-1 rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+34 16 0:30 / /sys/kernel/debug rw,relatime - autofs systemd-1 rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+35 15 0:31 / /proc/sys/fs/binfmt_misc rw,relatime - autofs systemd-1 rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+36 17 0:32 / /dev/mqueue rw,relatime - autofs systemd-1 rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+37 15 0:14 / /proc/bus/usb rw,relatime - usbfs /proc/bus/usb rw
+38 33 0:33 / /dev/hugepages rw,relatime - hugetlbfs hugetlbfs rw
+39 36 0:12 / /dev/mqueue rw,relatime - mqueue mqueue rw
+40 20 8:6 / /boot rw,noatime - ext3 /dev/sda6 rw,errors=continue,barrier=0,data=ordered
+41 20 253:0 / /home/kzak rw,noatime - ext4 /dev/mapper/kzak-home rw,barrier=1,data=ordered
+42 35 0:34 / /proc/sys/fs/binfmt_misc rw,relatime - binfmt_misc none rw
+43 16 0:35 / /sys/fs/fuse/connections rw,relatime - fusectl fusectl rw
+44 41 0:36 / /home/kzak/.gvfs rw,nosuid,nodev,relatime - fuse.gvfs-fuse-daemon gvfs-fuse-daemon rw,user_id=500,group_id=500
+45 20 0:37 / /var/lib/nfs/rpc_pipefs rw,relatime - rpc_pipefs sunrpc rw
+47 20 0:38 / /mnt/sounds rw,relatime - cifs //foo.home/bar/ rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
diff --git a/tests/ts/libmount/files/mountinfo_mv b/tests/ts/libmount/files/mountinfo_mv
new file mode 100644
index 0000000..3d55aff
--- /dev/null
+++ b/tests/ts/libmount/files/mountinfo_mv
@@ -0,0 +1,32 @@
+15 20 0:3 / /proc rw,relatime - proc /proc rw
+16 20 0:15 / /sys rw,relatime - sysfs /sys rw
+17 20 0:5 / /dev rw,relatime - devtmpfs udev rw,size=1983516k,nr_inodes=495879,mode=755
+18 17 0:10 / /dev/pts rw,relatime - devpts devpts rw,gid=5,mode=620,ptmxmode=000
+19 17 0:16 / /dev/shm rw,relatime - tmpfs tmpfs rw
+20 1 8:4 / / rw,noatime - ext3 /dev/sda4 rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+21 16 0:17 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime - tmpfs tmpfs rw,mode=755
+22 21 0:18 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+23 21 0:19 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuset
+24 21 0:20 / /sys/fs/cgroup/ns rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,ns
+25 21 0:21 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpu
+26 21 0:22 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct
+27 21 0:23 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,memory
+28 21 0:24 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,devices
+29 21 0:25 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,freezer
+30 21 0:26 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,net_cls
+31 21 0:27 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,blkio
+32 16 0:28 / /sys/kernel/security rw,relatime - autofs systemd-1 rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+33 17 0:29 / /dev/hugepages rw,relatime - autofs systemd-1 rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+34 16 0:30 / /sys/kernel/debug rw,relatime - autofs systemd-1 rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+35 15 0:31 / /proc/sys/fs/binfmt_misc rw,relatime - autofs systemd-1 rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+36 17 0:32 / /dev/mqueue rw,relatime - autofs systemd-1 rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+37 15 0:14 / /proc/bus/usb rw,relatime - usbfs /proc/bus/usb rw
+38 33 0:33 / /dev/hugepages rw,relatime - hugetlbfs hugetlbfs rw
+39 36 0:12 / /dev/mqueue rw,relatime - mqueue mqueue rw
+40 20 8:6 / /boot rw,noatime - ext3 /dev/sda6 rw,errors=continue,barrier=0,data=ordered
+41 20 253:0 / /home/kzak rw,noatime - ext4 /dev/mapper/kzak-home rw,barrier=1,data=ordered
+42 35 0:34 / /proc/sys/fs/binfmt_misc rw,relatime - binfmt_misc none rw
+43 16 0:35 / /sys/fs/fuse/connections rw,relatime - fusectl fusectl rw
+44 41 0:36 / /home/kzak/.gvfs rw,nosuid,nodev,relatime - fuse.gvfs-fuse-daemon gvfs-fuse-daemon rw,user_id=500,group_id=500
+45 20 0:37 / /var/lib/nfs/rpc_pipefs rw,relatime - rpc_pipefs sunrpc rw
+47 20 0:38 / /mnt/music rw,relatime - cifs //foo.home/bar/ rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
diff --git a/tests/ts/libmount/files/mountinfo_re b/tests/ts/libmount/files/mountinfo_re
new file mode 100644
index 0000000..df379fa
--- /dev/null
+++ b/tests/ts/libmount/files/mountinfo_re
@@ -0,0 +1,32 @@
+15 20 0:3 / /proc rw,relatime - proc /proc rw
+16 20 0:15 / /sys rw,relatime - sysfs /sys rw
+17 20 0:5 / /dev rw,relatime - devtmpfs udev rw,size=1983516k,nr_inodes=495879,mode=755
+18 17 0:10 / /dev/pts rw,relatime - devpts devpts rw,gid=5,mode=620,ptmxmode=000
+19 17 0:16 / /dev/shm rw,relatime - tmpfs tmpfs rw
+20 1 8:4 / / rw,noatime - ext3 /dev/sda4 rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+21 16 0:17 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime - tmpfs tmpfs rw,mode=755
+22 21 0:18 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+23 21 0:19 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuset
+24 21 0:20 / /sys/fs/cgroup/ns rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,ns
+25 21 0:21 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpu
+26 21 0:22 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct
+27 21 0:23 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,memory
+28 21 0:24 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,devices
+29 21 0:25 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,freezer
+30 21 0:26 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,net_cls
+31 21 0:27 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,blkio
+32 16 0:28 / /sys/kernel/security rw,relatime - autofs systemd-1 rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+33 17 0:29 / /dev/hugepages rw,relatime - autofs systemd-1 rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+34 16 0:30 / /sys/kernel/debug rw,relatime - autofs systemd-1 rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+35 15 0:31 / /proc/sys/fs/binfmt_misc rw,relatime - autofs systemd-1 rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+36 17 0:32 / /dev/mqueue rw,relatime - autofs systemd-1 rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+37 15 0:14 / /proc/bus/usb rw,relatime - usbfs /proc/bus/usb rw
+38 33 0:33 / /dev/hugepages rw,relatime - hugetlbfs hugetlbfs rw
+39 36 0:12 / /dev/mqueue rw,relatime - mqueue mqueue rw
+40 20 8:6 / /boot rw,noatime - ext3 /dev/sda6 rw,errors=continue,barrier=0,data=ordered
+41 20 253:0 / /home/kzak ro,noatime - ext4 /dev/mapper/kzak-home rw,barrier=1,data=ordered
+42 35 0:34 / /proc/sys/fs/binfmt_misc rw,relatime - binfmt_misc none rw
+43 16 0:35 / /sys/fs/fuse/connections rw,relatime - fusectl fusectl rw
+44 41 0:36 / /home/kzak/.gvfs rw,nosuid,nodev,relatime - fuse.gvfs-fuse-daemon gvfs-fuse-daemon rw,user_id=500,group_id=500
+45 20 0:37 / /var/lib/nfs/rpc_pipefs rw,relatime - rpc_pipefs sunrpc rw
+47 20 0:38 / /mnt/sounds rw,relatime - cifs //foo.home/bar/ ro,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
diff --git a/tests/ts/libmount/files/mountinfo_u b/tests/ts/libmount/files/mountinfo_u
new file mode 100644
index 0000000..a3dde97
--- /dev/null
+++ b/tests/ts/libmount/files/mountinfo_u
@@ -0,0 +1,31 @@
+15 20 0:3 / /proc rw,relatime - proc /proc rw
+16 20 0:15 / /sys rw,relatime - sysfs /sys rw
+17 20 0:5 / /dev rw,relatime - devtmpfs udev rw,size=1983516k,nr_inodes=495879,mode=755
+18 17 0:10 / /dev/pts rw,relatime - devpts devpts rw,gid=5,mode=620,ptmxmode=000
+19 17 0:16 / /dev/shm rw,relatime - tmpfs tmpfs rw
+20 1 8:4 / / rw,noatime - ext3 /dev/sda4 rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+21 16 0:17 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime - tmpfs tmpfs rw,mode=755
+22 21 0:18 / /sys/fs/cgroup/systemd rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+23 21 0:19 / /sys/fs/cgroup/cpuset rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuset
+24 21 0:20 / /sys/fs/cgroup/ns rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,ns
+25 21 0:21 / /sys/fs/cgroup/cpu rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpu
+26 21 0:22 / /sys/fs/cgroup/cpuacct rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct
+27 21 0:23 / /sys/fs/cgroup/memory rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,memory
+28 21 0:24 / /sys/fs/cgroup/devices rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,devices
+29 21 0:25 / /sys/fs/cgroup/freezer rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,freezer
+30 21 0:26 / /sys/fs/cgroup/net_cls rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,net_cls
+31 21 0:27 / /sys/fs/cgroup/blkio rw,nosuid,nodev,noexec,relatime - cgroup cgroup rw,blkio
+32 16 0:28 / /sys/kernel/security rw,relatime - autofs systemd-1 rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+33 17 0:29 / /dev/hugepages rw,relatime - autofs systemd-1 rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+34 16 0:30 / /sys/kernel/debug rw,relatime - autofs systemd-1 rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+35 15 0:31 / /proc/sys/fs/binfmt_misc rw,relatime - autofs systemd-1 rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+36 17 0:32 / /dev/mqueue rw,relatime - autofs systemd-1 rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+37 15 0:14 / /proc/bus/usb rw,relatime - usbfs /proc/bus/usb rw
+38 33 0:33 / /dev/hugepages rw,relatime - hugetlbfs hugetlbfs rw
+39 36 0:12 / /dev/mqueue rw,relatime - mqueue mqueue rw
+40 20 8:6 / /boot rw,noatime - ext3 /dev/sda6 rw,errors=continue,barrier=0,data=ordered
+42 35 0:34 / /proc/sys/fs/binfmt_misc rw,relatime - binfmt_misc none rw
+43 16 0:35 / /sys/fs/fuse/connections rw,relatime - fusectl fusectl rw
+44 41 0:36 / /home/kzak/.gvfs rw,nosuid,nodev,relatime - fuse.gvfs-fuse-daemon gvfs-fuse-daemon rw,user_id=500,group_id=500
+45 20 0:37 / /var/lib/nfs/rpc_pipefs rw,relatime - rpc_pipefs sunrpc rw
+47 20 0:38 / /mnt/sounds rw,relatime - cifs //foo.home/bar/ rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
diff --git a/tests/ts/libmount/files/mtab b/tests/ts/libmount/files/mtab
new file mode 100644
index 0000000..2de255b
--- /dev/null
+++ b/tests/ts/libmount/files/mtab
@@ -0,0 +1,11 @@
+/dev/sda4 / ext3 rw,noatime 0 0
+proc /proc proc rw 0 0
+sysfs /sys sysfs rw 0 0
+devpts /dev/pts devpts rw,gid=5,mode=620 0 0
+tmpfs /dev/shm tmpfs rw 0 0
+/dev/sda6 /boot ext3 rw,noatime 0 0
+/dev/mapper/kzak-home /home/kzak ext4 rw,noatime 0 0
+none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
+fusectl /sys/fs/fuse/connections fusectl rw 0 0
+gvfs-fuse-daemon /home/kzak/.gvfs fuse.gvfs-fuse-daemon rw,nosuid,nodev,user=kzak 0 0
+sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
diff --git a/tests/ts/libmount/lock b/tests/ts/libmount/lock
new file mode 100755
index 0000000..5c8bcb6
--- /dev/null
+++ b/tests/ts/libmount/lock
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="lock"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+TESTPROG="$TS_HELPER_LIBMOUNT_LOCK"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+#
+# Be careful with number of processes. Don't forget that there is time limit
+# when the mount waits on the mtab lock. If you define too much processes some
+# of them will fail with timeout.
+#
+# Note: the original version (< 2.13) of util-linux is completely useless for
+# this test (maximum for this old version is NLOOPS=10 and NPROCESSES=5 (2-way
+# 2GHz machine)). It has terrible performance due a bad timeouts implemntation
+# in lock_mtab().
+#
+NLOOPS=1000
+NPROCESSES=50
+
+
+> $TS_OUTPUT.debug
+echo 0 > $TS_OUTPUT
+SYNCTIME=$(( $(date +%s) + 5 ))
+
+for id in $(seq 0 $(( $NPROCESSES - 1 ))); do
+ ts_valgrind $TESTPROG --lock --synctime $SYNCTIME $TS_OUTPUT $NLOOPS >> $TS_OUTPUT.debug 2>&1 &
+done
+
+wait
+
+ts_finalize
diff --git a/tests/ts/libmount/optstr b/tests/ts/libmount/optstr
new file mode 100755
index 0000000..f6a5c05
--- /dev/null
+++ b/tests/ts/libmount/optstr
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="options string"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+TESTPROG="$TS_HELPER_LIBMOUNT_OPTSTR"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+ts_init_subtest "append"
+ts_valgrind $TESTPROG --append "aaa,bbb=BBB,context=\"foo,bar,gogo\",ccc" "ddd" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "append-value"
+ts_valgrind $TESTPROG --append "aaa,bbb=BBB,ccc" "ddd" "DDD" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend"
+ts_valgrind $TESTPROG --prepend "aaa,bbb=BBB,ccc" "ddd" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "prepend-value"
+ts_valgrind $TESTPROG --prepend "aaa,bbb=BBB,ccc" "ddd" "DDD" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set-remove"
+ts_valgrind $TESTPROG --set "aaa,bbb=BBB,ccc" "bbb" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set-small"
+ts_valgrind $TESTPROG --set "aaa,bbb=BBB,ccc" "bbb" "X" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set-large"
+ts_valgrind $TESTPROG --set "aaa,bbb=BBB,ccc" "bbb" "XXX-YYY-ZZZ" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set-new"
+ts_valgrind $TESTPROG --set "aaa,bbb=BBB,ccc" "aaa" "XXX" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "set-new-end"
+ts_valgrind $TESTPROG --set "aaa,bbb=BBB,ccc" "ccc" "XXX" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get"
+ts_valgrind $TESTPROG --get "aaa,bbb=BBB,ccc" "aaa" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "get-value"
+ts_valgrind $TESTPROG --get "aaa,bbb=BBB,ccc" "bbb" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "remove"
+ts_valgrind $TESTPROG --remove "aaa,bbb=BBB,ccc" "aaa" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "remove-quoted"
+ts_valgrind $TESTPROG --remove "aaa,context=\"foo,bar,gogo\",bbb=BBB,ccc" "context" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "remove-value"
+ts_valgrind $TESTPROG --remove "aaa,bbb=BBB,ccc" "bbb" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "split"
+ts_valgrind $TESTPROG --split "aaa,bbb=BBB,ccc,x-bar,x-foo=foodata,user=kzak,noexec,nosuid,loop=/dev/loop0" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "flags"
+ts_valgrind $TESTPROG --flags "aaa,bbb=BBB,x-foo,ccc,user=kzak,nodev,noexec,nosuid,loop=/dev/loop0" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "apply-linux" # add noatime and remove noexec and nosuid
+ts_valgrind $TESTPROG --apply --linux "user=kzak,noexec,nosuid" 0x400 &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "apply-user" # add user,nofail and remove loop
+ts_valgrind $TESTPROG --apply --user "noexec,nosuid,loop=/dev/looop0" 0x408 &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fix"
+ts_valgrind $TESTPROG --fix "uid=root,gid=root" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "deduplicate"
+ts_valgrind $TESTPROG --dedup bbb,ccc,AAA,xxx,AAA=a,AAA=bbb,ddd,AAA=ccc,fff=eee AAA &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
diff --git a/tests/ts/libmount/tabdiff b/tests/ts/libmount/tabdiff
new file mode 100755
index 0000000..c988258
--- /dev/null
+++ b/tests/ts/libmount/tabdiff
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="table diffs"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+TESTPROG="$TS_HELPER_LIBMOUNT_TABDIFF"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+ts_init_subtest "mount"
+ts_valgrind $TESTPROG --diff $TS_SELF/files/mountinfo_u $TS_SELF/files/mountinfo &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "umount"
+ts_valgrind $TESTPROG --diff $TS_SELF/files/mountinfo $TS_SELF/files/mountinfo_u &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "remount"
+ts_valgrind $TESTPROG --diff $TS_SELF/files/mountinfo $TS_SELF/files/mountinfo_re &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "move"
+ts_valgrind $TESTPROG --diff $TS_SELF/files/mountinfo $TS_SELF/files/mountinfo_mv &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
diff --git a/tests/ts/libmount/tabfiles b/tests/ts/libmount/tabfiles
new file mode 100755
index 0000000..671c649
--- /dev/null
+++ b/tests/ts/libmount/tabfiles
@@ -0,0 +1,65 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="tab files"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+TESTPROG="$TS_HELPER_LIBMOUNT_TAB"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+ts_init_subtest "parse-fstab"
+ts_valgrind $TESTPROG --parse "$TS_SELF/files/fstab" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "parse-mtab"
+ts_valgrind $TESTPROG --parse "$TS_SELF/files/mtab" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "parse-fstab-broken"
+ts_valgrind $TESTPROG --parse "$TS_SELF/files/fstab.broken" &> $TS_OUTPUT
+sed -i -e 's/.*fstab.broken:[[:digit:]]*: parse error//g; s/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "parse-mountinfo"
+ts_valgrind $TESTPROG --parse "$TS_SELF/files/mountinfo" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "copy"
+ts_valgrind $TESTPROG --copy-fs "$TS_SELF/files/fstab" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "find-source"
+ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" source UUID=fef7ccb3-821c-4de8-88dc-71472be5946f &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "find-target"
+ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /home/foo &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "find-target2"
+ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /any/foo &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "find-target3"
+ts_valgrind $TESTPROG --find-forward "$TS_SELF/files/fstab" target /any/foo/ &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "find-pair"
+ts_valgrind $TESTPROG --find-pair "$TS_SELF/files/mtab" /dev/mapper/kzak-home /home/kzak &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
diff --git a/tests/ts/libmount/tabfiles-tags b/tests/ts/libmount/tabfiles-tags
new file mode 100755
index 0000000..c5b4181
--- /dev/null
+++ b/tests/ts/libmount/tabfiles-tags
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="tags"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+TESTPROG="$TS_HELPER_LIBMOUNT_TAB"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+#
+# Init device
+#
+modprobe --dry-run --quiet scsi_debug
+[ "$?" == 0 ] || ts_skip "missing scsi_debug module"
+
+rmmod scsi_debug &> /dev/null
+modprobe scsi_debug dev_size_mb=50 sector_size=512
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+sleep 3
+
+DEVNAME=$(grep scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}')
+[ "x${DEVNAME}" == "x" ] && ts_die "Cannot find device"
+
+DEVICE="/dev/${DEVNAME}"
+LABEL="testLibmount"
+UUID="de1bc6e9-34ab-4151-a1d7-900042eee8d9"
+
+#
+# Create filesystem
+#
+mkfs.ext3 -F -L $LABEL $DEVICE -U $UUID &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+FSTAB="$TS_OUTDIR/fstab"
+
+#
+# Label in fstab
+#
+echo "LABEL=$LABEL /mnt/mountpoint auto defaults" > $FSTAB
+
+ts_init_subtest "fstab-label2uuid"
+ts_valgrind $TESTPROG --find-forward $FSTAB source "UUID=$UUID" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fstab-label2dev"
+ts_valgrind $TESTPROG --find-forward $FSTAB source $DEVICE &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+#
+# Add more enties for the same device
+#
+echo "UUID=$UUID /mnt/mountpoint2 auto defaults" >> $FSTAB
+
+ts_init_subtest "fstab-uuid"
+# has to return /mnt/mountpoint2
+ts_valgrind $TESTPROG --find-forward $FSTAB source "UUID=$UUID" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fstab-label"
+# has to return /mnt/mountpoint
+ts_valgrind $TESTPROG --find-forward $FSTAB source "LABEL=$LABEL" &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+
+ts_init_subtest "fstab-dev2label"
+# has to return /mnt/mountpoint
+ts_valgrind $TESTPROG --find-forward $FSTAB source $DEVICE &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+ts_finalize_subtest
+
+#
+# Add devname
+#
+echo "$DEVICE /mnt/mountpoint3 auto defaults" >> $FSTAB
+
+ts_init_subtest "fstab-dev"
+# has to return /mnt/mountpoint3
+ts_valgrind $TESTPROG --find-forward $FSTAB source $DEVICE &> $TS_OUTPUT
+sed -i -e 's/fs: 0x.*/fs:/g' $TS_OUTPUT
+sed -i -e 's/source: .*//g' $TS_OUTPUT # devname is generated, remove it
+ts_finalize_subtest
+
+
+sleep 3
+rmmod scsi_debug
+ts_finalize
diff --git a/tests/ts/libmount/update b/tests/ts/libmount/update
new file mode 100755
index 0000000..3a989dd
--- /dev/null
+++ b/tests/ts/libmount/update
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="tab update"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+TESTPROG="$TS_HELPER_LIBMOUNT_UPDATE"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+# IMPORTANT notes:
+#
+# - the $TS_OUTPUT variable is between ts_init_subtest and ts_finalize_subtest
+# redefined to subtest specific namespace -- it means that $TS_OUTPUT is a
+# different file within a subtest.
+#
+# - all this test uses global $TS_OUTPUT.{mtab,mountinfo}
+
+
+#
+# Traditional /etc/mtab
+#
+export LIBMOUNT_MTAB=$TS_OUTPUT.mtab
+rm -f $LIBMOUNT_MTAB
+> $LIBMOUNT_MTAB
+
+ts_init_subtest "mtab-mount"
+ts_valgrind $TESTPROG --add /dev/sda1 /mnt/foo ext3 "rw,bbb,ccc,fff=FFF,ddd,noexec"
+ts_valgrind $TESTPROG --add /dev/sdb1 /mnt/bar ext3 "gg=G,ffff=f,ro,noatime"
+ts_valgrind $TESTPROG --add /dev/sda2 /mnt/bar ext3 "rw,noatime"
+ts_valgrind $TESTPROG --add /dev/sda1 /mnt/gogo ext3 "rw,noatime,nosuid"
+ts_valgrind $TESTPROG --add none /proc proc defaults
+cp $LIBMOUNT_MTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "mtab-move"
+ts_valgrind $TESTPROG --move /mnt/foo /mnt/newfoo
+ts_valgrind $TESTPROG --move /mnt/bar /mnt/newbar
+cp $LIBMOUNT_MTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "mtab-remount"
+ts_valgrind $TESTPROG --remount /mnt/newfoo "ro,noatime"
+ts_valgrind $TESTPROG --remount /mnt/bar "rw,atime,nosuid"
+cp $LIBMOUNT_MTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "mtab-umount"
+ts_valgrind $TESTPROG --remove /mnt/bar
+ts_valgrind $TESTPROG --remove /mnt/gogo
+ts_valgrind $TESTPROG --remove /proc
+cp $LIBMOUNT_MTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+#
+# utab
+#
+rm -f $LIBMOUNT_MTAB
+ln -s /proc/mounts $LIBMOUNT_MTAB
+
+export LIBMOUNT_UTAB=$TS_OUTPUT.utab
+rm -f $LIBMOUNT_UTAB
+> $LIBMOUNT_UTAB
+
+ts_init_subtest "utab-mount"
+ts_valgrind $TESTPROG --add /dev/sda1 /mnt/foo ext3 "rw,bbb,ccc,fff=FFF,ddd,noexec"
+ts_valgrind $TESTPROG --add /dev/sdb1 /mnt/bar ext3 "ro,user"
+ts_valgrind $TESTPROG --add /dev/sda2 /mnt/xyz ext3 "rw,loop=/dev/loop0,uhelper=hal"
+ts_valgrind $TESTPROG --add none /proc proc "rw,user"
+cp $LIBMOUNT_UTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "utab-move"
+ts_valgrind $TESTPROG --move /mnt/bar /mnt/newbar
+ts_valgrind $TESTPROG --move /mnt/xyz /mnt/newxyz
+cp $LIBMOUNT_UTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "utab-remount"
+ts_valgrind $TESTPROG --remount /mnt/newbar "ro,noatime"
+ts_valgrind $TESTPROG --remount /mnt/newxyz "rw,user"
+cp $LIBMOUNT_UTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_init_subtest "utab-umount"
+ts_valgrind $TESTPROG --remove /mnt/newbar
+ts_valgrind $TESTPROG --remove /proc
+cp $LIBMOUNT_UTAB $TS_OUTPUT # save the mtab aside
+ts_finalize_subtest # checks the mtab
+
+ts_finalize
diff --git a/tests/ts/libmount/utils b/tests/ts/libmount/utils
new file mode 100755
index 0000000..d425400
--- /dev/null
+++ b/tests/ts/libmount/utils
@@ -0,0 +1,79 @@
+#!/bin/bash
+
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="utils"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+TESTPROG="$TS_HELPER_LIBMOUNT_UTILS"
+
+[ -x $TESTPROG ] || ts_skip "test not compiled"
+
+ts_init_subtest "match-fstype"
+ts_valgrind $TESTPROG --match-fstype ext3 "ext2,ext3,cifs" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-fstype-neg"
+ts_valgrind $TESTPROG --match-fstype cifs "ext2,ext3,nocifs" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-fstype-neg2"
+ts_valgrind $TESTPROG --match-fstype cifs "noext2,ext3,cifs" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-options"
+ts_valgrind $TESTPROG --match-options "aaa,bbb=BBB,ccc,ddd" "ccc" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-options-list"
+ts_valgrind $TESTPROG --match-options "aaa,bbb=BBB,ccc,ddd" "ccc,aaa,ddd" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-options-neg"
+ts_valgrind $TESTPROG --match-options "aaa,bbb=BBB,ccc,ddd" "noxxx" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-options-neg-list"
+ts_valgrind $TESTPROG --match-options "aaa,bbb=BBB,ccc,ddd" "ddd,noaaa" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "match-options-neg-list2"
+ts_valgrind $TESTPROG --match-options "aaa,bbb=BBB,ccc,ddd" "noxxx,ccc,aaa" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "starts-with"
+ts_valgrind $TESTPROG --starts-with "AAAbbbCCC" "AAA" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "ends-with"
+ts_valgrind $TESTPROG --ends-with "AAAbbbCCC" "CCC" &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "mountpoint"
+ts_valgrind $TESTPROG --mountpoint /proc &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "mountpoint-subdir"
+ts_valgrind $TESTPROG --mountpoint /proc/sys/kernel &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "mountpoint-root"
+ts_valgrind $TESTPROG --mountpoint / &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fs-root"
+ts_valgrind $TESTPROG --fs-root /proc &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fs-root-subdir"
+ts_valgrind $TESTPROG --fs-root /proc/sys/kernel &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "fs-root-subdir2"
+ts_valgrind $TESTPROG --fs-root /etc &> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_finalize
diff --git a/tests/ts/login/islocal b/tests/ts/login/islocal
new file mode 100755
index 0000000..c25da6a
--- /dev/null
+++ b/tests/ts/login/islocal
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2008 James Youngman <jay@gnu.org>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="islocal"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+$TS_HELPER_ISLOCAL "$TS_SELF/islocal.data" root nobody "" youngman youngman2 \
+ abcdefghx nobo long rot al malformed \
+ nonl znobody >> $TS_OUTPUT
+ts_finalize
diff --git a/tests/ts/login/islocal.data b/tests/ts/login/islocal.data
new file mode 100644
index 0000000..916a8a9
--- /dev/null
+++ b/tests/ts/login/islocal.data
@@ -0,0 +1,10 @@
+root:x:0:0:root:/root:/bin/bash
+sys:x:3:3:sys:/dev:/bin/sh
+orac:x:33:33:sys:/dev:/bin/youngman
+long:x:4:4:foo:/home/loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooonnnggg:/bin/sh
+al:x:5:5:fnord:/dev:/bin/sh
+abcdefgh:x:6:3:fnord:/dev:/bin/sh
+malformed
+
+nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
+nonl:x:65532:65532:no newline:/:/bin/false
diff --git a/tests/ts/login/logindefs b/tests/ts/login/logindefs
new file mode 100755
index 0000000..10caed7
--- /dev/null
+++ b/tests/ts/login/logindefs
@@ -0,0 +1,24 @@
+#!/bin/bash
+#
+# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="defs"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+# list all items
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" | sed 's:'$TS_SELF'/::g' >> $TS_OUTPUT
+
+# search
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" str STRING >> $TS_OUTPUT
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" num NUMBER >> $TS_OUTPUT
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" bool BOOLEAN >> $TS_OUTPUT
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" str EMPTY >> $TS_OUTPUT
+
+$TS_HELPER_LOGINDEFS "$TS_SELF/logindefs.data" str UNKNOWN >> $TS_OUTPUT
+
+ts_finalize
diff --git a/tests/ts/login/logindefs.data b/tests/ts/login/logindefs.data
new file mode 100644
index 0000000..b899ff7
--- /dev/null
+++ b/tests/ts/login/logindefs.data
@@ -0,0 +1,16 @@
+#
+# this is /etc/login.defs sample
+#
+
+HELLO_WORLD "hello world!"
+STRING this_is_string # another comment
+NUMBER 123456
+BOOLEAN yEs
+
+CRAZY1 = "this is crazy format"
+CRAZY2=fooBar
+CRAZY3 FoooBaaar
+
+EMPTY
+
+END "the is end"
diff --git a/tests/ts/look/separator b/tests/ts/look/separator
new file mode 100755
index 0000000..51e96c9
--- /dev/null
+++ b/tests/ts/look/separator
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+#
+# WARNING: the look command expects that the /usr/share/dict/words uses
+# directory order!
+#
+# for example:
+#
+# cat words.raw | egrep --invert-match "'s$" | \
+# egrep "^[[:alnum:]'&!,./-]+$" | \
+# sort --ignore-case --dictionary-order | \
+# uniq > words
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="separator"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+$TS_CMD_LOOK apple-pie $TS_TOPDIR/ts/look/words >> $TS_OUTPUT
+ts_finalize
+
diff --git a/tests/ts/look/words b/tests/ts/look/words
new file mode 100644
index 0000000..b67ba9a
--- /dev/null
+++ b/tests/ts/look/words
@@ -0,0 +1,3 @@
+apple
+apple-pie
+oranges
diff --git a/tests/ts/lscpu/dumps/i386-amdshanghai.tar.gz b/tests/ts/lscpu/dumps/i386-amdshanghai.tar.gz
new file mode 100644
index 0000000..199c22b
--- /dev/null
+++ b/tests/ts/lscpu/dumps/i386-amdshanghai.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/i386-dellpe700.tar.gz b/tests/ts/lscpu/dumps/i386-dellpe700.tar.gz
new file mode 100644
index 0000000..a18a779
--- /dev/null
+++ b/tests/ts/lscpu/dumps/i386-dellpe700.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/i386-intels5000phb.tar.gz b/tests/ts/lscpu/dumps/i386-intels5000phb.tar.gz
new file mode 100644
index 0000000..36c9811
--- /dev/null
+++ b/tests/ts/lscpu/dumps/i386-intels5000phb.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/ia64-512cpus.tar.gz b/tests/ts/lscpu/dumps/ia64-512cpus.tar.gz
new file mode 100644
index 0000000..caae22d
--- /dev/null
+++ b/tests/ts/lscpu/dumps/ia64-512cpus.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/ia64-hpmatterhorn.tar.gz b/tests/ts/lscpu/dumps/ia64-hpmatterhorn.tar.gz
new file mode 100644
index 0000000..b5f1516
--- /dev/null
+++ b/tests/ts/lscpu/dumps/ia64-hpmatterhorn.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/ia64-hprx1620.tar.gz b/tests/ts/lscpu/dumps/ia64-hprx1620.tar.gz
new file mode 100644
index 0000000..37bcb17
--- /dev/null
+++ b/tests/ts/lscpu/dumps/ia64-hprx1620.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/ia64-pg0.tar.gz b/tests/ts/lscpu/dumps/ia64-pg0.tar.gz
new file mode 100644
index 0000000..f30d792
--- /dev/null
+++ b/tests/ts/lscpu/dumps/ia64-pg0.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/ppc64-POWER7.tar.gz b/tests/ts/lscpu/dumps/ppc64-POWER7.tar.gz
new file mode 100644
index 0000000..c8fcc23
--- /dev/null
+++ b/tests/ts/lscpu/dumps/ppc64-POWER7.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/s390-kvm.tar.gz b/tests/ts/lscpu/dumps/s390-kvm.tar.gz
new file mode 100644
index 0000000..340f7ea
--- /dev/null
+++ b/tests/ts/lscpu/dumps/s390-kvm.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/s390-lpar.tar.gz b/tests/ts/lscpu/dumps/s390-lpar.tar.gz
new file mode 100644
index 0000000..59aea6a
--- /dev/null
+++ b/tests/ts/lscpu/dumps/s390-lpar.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/s390-zvm.tar.gz b/tests/ts/lscpu/dumps/s390-zvm.tar.gz
new file mode 100644
index 0000000..b13594d
--- /dev/null
+++ b/tests/ts/lscpu/dumps/s390-zvm.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/sparc64-UltraSparc-T1.tar.gz b/tests/ts/lscpu/dumps/sparc64-UltraSparc-T1.tar.gz
new file mode 100644
index 0000000..15bfeef
--- /dev/null
+++ b/tests/ts/lscpu/dumps/sparc64-UltraSparc-T1.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-64cpu.tar.gz b/tests/ts/lscpu/dumps/x86_64-64cpu.tar.gz
new file mode 100644
index 0000000..4d7516e
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-64cpu.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-dell_e4310.tar.gz b/tests/ts/lscpu/dumps/x86_64-dell_e4310.tar.gz
new file mode 100644
index 0000000..2988cbc
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-dell_e4310.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-dell_poweredge1950.tar.gz b/tests/ts/lscpu/dumps/x86_64-dell_poweredge1950.tar.gz
new file mode 100644
index 0000000..ef3f73e
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-dell_poweredge1950.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-dell_poweredgeR610.tar.gz b/tests/ts/lscpu/dumps/x86_64-dell_poweredgeR610.tar.gz
new file mode 100644
index 0000000..2f9fccd
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-dell_poweredgeR610.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-dellr710.tar.gz b/tests/ts/lscpu/dumps/x86_64-dellr710.tar.gz
new file mode 100644
index 0000000..2c16381
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-dellr710.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-el5xen.tar.gz b/tests/ts/lscpu/dumps/x86_64-el5xen.tar.gz
new file mode 100644
index 0000000..2ad47dd
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-el5xen.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-hpdl585.tar.gz b/tests/ts/lscpu/dumps/x86_64-hpdl585.tar.gz
new file mode 100644
index 0000000..89790b7
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-hpdl585.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-ibme326m.tar.gz b/tests/ts/lscpu/dumps/x86_64-ibme326m.tar.gz
new file mode 100644
index 0000000..5aff52f
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-ibme326m.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/dumps/x86_64-necem14.tar.gz b/tests/ts/lscpu/dumps/x86_64-necem14.tar.gz
new file mode 100644
index 0000000..00ed35f
--- /dev/null
+++ b/tests/ts/lscpu/dumps/x86_64-necem14.tar.gz
Binary files differ
diff --git a/tests/ts/lscpu/lscpu b/tests/ts/lscpu/lscpu
new file mode 100755
index 0000000..a7d7a95
--- /dev/null
+++ b/tests/ts/lscpu/lscpu
@@ -0,0 +1,50 @@
+#!/bin/bash
+#
+# Copyright (C) 2008 Cai Qian <qcai@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 3 of the License, or
+# (at your option) any later version.
+#
+# This file 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, see <http://www.gnu.org/licenses/>.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+. $TS_TOPDIR/functions.sh
+
+ts_init "$*"
+
+for dump in $(ls $TS_SELF/dumps/*.tar.gz | sort); do
+ name=$(basename $dump .tar.gz)
+ dumpdir="$TS_OUTDIR/dumps"
+
+ ts_init_subtest $name
+ mkdir -p $dumpdir
+
+ tar -C $dumpdir -zxf $dump
+
+ # Architecture information is not applicable with -s.
+ "${TS_CMD_LSCPU}" -s "${dumpdir}/${name}" | \
+ grep -v "Architecture" >"${TS_OUTPUT}" 2>&1
+
+ echo >>"${TS_OUTPUT}"
+
+ "${TS_CMD_LSCPU}" -p -s "${dumpdir}/${name}" \
+ >>"${TS_OUTPUT}" 2>&1
+
+ # LE/BE depends on binary
+ sed -i -e '/Byte Order:.*/d' $TS_OUTPUT
+
+ ts_finalize_subtest
+done
+
+ts_finalize
+
diff --git a/tests/ts/lscpu/mk-input.sh b/tests/ts/lscpu/mk-input.sh
new file mode 100644
index 0000000..65e3d20
--- /dev/null
+++ b/tests/ts/lscpu/mk-input.sh
@@ -0,0 +1,43 @@
+#!/bin/bash
+#
+# Copyright (C) 2008-2009 Karel Zak <kzak@redhat.com>
+#
+# This script makes a copy of relevant files from /sys and /proc.
+# The files are useful for lscpu(1) regression tests.
+#
+progname=$(basename $0)
+
+if [ -z "$1" ]; then
+ echo -e "\nusage: $progname <testname>\n"
+ exit 1
+fi
+
+TS_NAME="$1"
+TS_DUMP="$TS_NAME"
+CP="cp -r --parents"
+
+mkdir -p $TS_DUMP/{proc,sys}
+
+$CP /proc/cpuinfo $TS_DUMP
+
+mkdir -p $TS_DUMP/proc/bus/pci
+$CP /proc/bus/pci/devices $TS_DUMP
+
+if [ -d "/proc/xen" ]; then
+ mkdir -p $TS_DUMP/proc/xen
+ if [ -f "/proc/xen/capabilities" ]; then
+ $CP /proc/xen/capabilities $TS_DUMP
+ fi
+fi
+
+if [ -e "/proc/sysinfo" ]; then
+ $CP /proc/sysinfo $TS_DUMP
+fi
+
+$CP /sys/devices/system/cpu/* $TS_DUMP
+$CP /sys/devices/system/node/*/cpumap $TS_DUMP
+
+tar zcvf $TS_NAME.tar.gz $TS_DUMP
+rm -rf $TS_DUMP
+
+
diff --git a/tests/ts/md5/data b/tests/ts/md5/data
new file mode 100644
index 0000000..1eed05a
--- /dev/null
+++ b/tests/ts/md5/data
@@ -0,0 +1,7 @@
+
+abc
+qazxswedc
+1qazxsw23edc
+a a a a a a a a a a
+KUWIOJDNWQKLFDHQUWEDAYCNAUIWSYDUQUICBSKLBCLUWIGDF
+EASC6545642432132SDECSESCEACSJKDWIOUDOIWIDOQPWUDQWIOSNXCSASCA
diff --git a/tests/ts/md5/md5 b/tests/ts/md5/md5
new file mode 100755
index 0000000..e94fb63
--- /dev/null
+++ b/tests/ts/md5/md5
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+> $TS_OUTPUT
+
+cat $TS_SELF/data | while read data
+do
+ echo -n $data | $TS_HELPER_MD5 >> $TS_OUTPUT
+done
+
+ts_finalize
+
diff --git a/tests/ts/minix/fsck b/tests/ts/minix/fsck
new file mode 100755
index 0000000..f635fc1
--- /dev/null
+++ b/tests/ts/minix/fsck
@@ -0,0 +1,39 @@
+#!/bin/bash
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="mkfs checksums"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+[ -x $TS_CMD_FSCKMINIX ] || ts_skip "fsck.minix not compiled"
+
+IMAGE="$TS_OUTDIR/${TS_TESTNAME}-loop.img"
+DEVICE=$(ts_device_init)
+
+ts_log "create minix fs"
+$TS_CMD_MKMINIX $DEVICE 2>&1 >> $TS_OUTPUT
+
+ts_log "fsck minix fs"
+$TS_CMD_FSCKMINIX $DEVICE 2>&1 >> $TS_OUTPUT
+
+ts_device_deinit $DEVICE
+ts_finalize
+
diff --git a/tests/ts/minix/mkfs b/tests/ts/minix/mkfs
new file mode 100755
index 0000000..93de4e6
--- /dev/null
+++ b/tests/ts/minix/mkfs
@@ -0,0 +1,47 @@
+#!/bin/bash
+#
+# Copyright (C) 2009 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="mkfs"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+[ -x $TS_CMD_MKMINIX ] || ts_skip "mkfs.minix not compiled"
+
+IMAGE="$TS_OUTDIR/${TS_TESTNAME}-loop.img"
+DEVICE=$(ts_device_init)
+
+ts_log "create minix fs"
+$TS_CMD_MKMINIX $DEVICE 2>&1 >> $TS_OUTPUT
+
+ts_log "create mountpoint dir"
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_log "mount the filesystem"
+$TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+# check it
+ts_is_mounted $DEVICE || ts_die "Cannot find $DEVICE in /proc/mounts" $DEVICE
+
+ts_log "umount the image"
+$TS_CMD_UMOUNT $DEVICE
+ts_device_deinit $DEVICE
+ts_finalize
+
diff --git a/tests/ts/misc/strtosize b/tests/ts/misc/strtosize
new file mode 100755
index 0000000..7fb2ff9
--- /dev/null
+++ b/tests/ts/misc/strtosize
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2010 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="strtosize"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+$TS_HELPER_STRUTILS -1 >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 0 >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1 >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 123 >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 18446744073709551615 >> $TS_OUTPUT 2>&1
+
+$TS_HELPER_STRUTILS 1K >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1KiB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1M >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1MiB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1G >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1GiB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1T >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1TiB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1P >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1PiB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1E >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1EiB >> $TS_OUTPUT 2>&1
+
+$TS_HELPER_STRUTILS 1KB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1MB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1GB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1TB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1PB >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 1EB >> $TS_OUTPUT 2>&1
+
+$TS_HELPER_STRUTILS "" >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS " " >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS " 1" >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS "1 " >> $TS_OUTPUT 2>&1
+
+$TS_HELPER_STRUTILS 0x0a >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 0xff00 >> $TS_OUTPUT 2>&1
+$TS_HELPER_STRUTILS 0x80000000 >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/mount/devname b/tests/ts/mount/devname
new file mode 100755
index 0000000..8f32ef1
--- /dev/null
+++ b/tests/ts/mount/devname
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "ext3" $DEVICE || ts_die "Cannot find ext3 on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+$TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+ts_is_mounted $DEVICE || ts_die "Cannot find $DEVICE in /proc/mounts" $DEVICE
+
+grep -q $DEVICE /etc/mtab ||
+ echo "mount failed: cannot find $DEVICE in mtab" >> $TS_OUTPUT 2>&1
+
+$TS_CMD_UMOUNT $DEVICE || ts_die "Cannot umount $DEVICE" $DEVICE
+
+grep -q $DEVICE /etc/mtab &&
+ echo "umount failed: found $DEVICE in mtab" >> $TS_OUTPUT 2>&1
+
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/encryption b/tests/ts/mount/encryption
new file mode 100755
index 0000000..bf452a0
--- /dev/null
+++ b/tests/ts/mount/encryption
@@ -0,0 +1,64 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+modprobe --dry-run --quiet cryptoloop
+[ "$?" == 0 ] || ts_skip "missing cryptoloop module"
+
+modprobe cryptoloop &> /dev/null
+
+PASSFILE=$TS_OUTPUT.pwd
+IMAGE=$(ts_image_init)
+
+echo "password" > $PASSFILE
+exec 9<> $PASSFILE
+
+DEVICE=$($TS_CMD_LOSETUP --pass-fd 9 --show --encryption blowfish --find $IMAGE)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+sleep 3
+$TS_CMD_LOSETUP --detach $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+# reopen (we need SEEK_SET 0, but this is shell...)
+exec 9>&-
+exec 9<> $PASSFILE
+
+$TS_CMD_MOUNT --pass-fd 9 -o encryption=blowfish $IMAGE $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+$TS_CMD_FINDMNT --kernel --target $TS_MOUNTPOINT &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot find $TS_MOUNTPOINT in /proc/self/mountinfo"
+
+$TS_CMD_UMOUNT $TS_MOUNTPOINT || ts_die "Cannot umount $TS_MOUNTPOINT" $DEVICE
+
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-broken b/tests/ts/mount/fstab-broken
new file mode 100755
index 0000000..48fe1a1
--- /dev/null
+++ b/tests/ts/mount/fstab-broken
@@ -0,0 +1,62 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="broken fstab"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+# Let's use the same mountpoint for all subtests
+MNT=$TS_MOUNTPOINT
+mkdir -p $MNT
+
+ts_fstab_open
+echo "tmpd $MNT tmpfs" >> /etc/fstab
+ts_fstab_close
+
+ts_init_subtest "mount"
+$TS_CMD_MOUNT $MNT &> /dev/null
+$TS_CMD_FINDMNT --kernel --target "$MNT" &> /dev/null
+if [ "$?" != "0" ]; then
+ ts_log "Cannot find $MNT in /proc/self/mountinfo"
+else
+ ts_log "OK"
+fi
+$TS_CMD_UMOUNT $MNT &> /dev/null
+ts_finalize_subtest
+
+
+ts_init_subtest "mount-all"
+$TS_CMD_MOUNT -a &> /dev/null
+$TS_CMD_FINDMNT --kernel --target "$MNT" &> /dev/null
+if [ "$?" != "0" ]; then
+ ts_log "Cannot find $MNT in /proc/self/mountinfo"
+else
+ ts_log "OK"
+fi
+$TS_CMD_UMOUNT $MNT &> /dev/null
+ts_finalize_subtest
+
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-devname b/tests/ts/mount/fstab-devname
new file mode 100755
index 0000000..9af8db6
--- /dev/null
+++ b/tests/ts/mount/fstab-devname
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname (fstab)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "ext3" $DEVICE || ts_die "Cannot find ext3 on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add $DEVICE
+
+# variant A)
+$TS_CMD_MOUNT $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT $DEVICE 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-devname2label b/tests/ts/mount/fstab-devname2label
new file mode 100755
index 0000000..34214db
--- /dev/null
+++ b/tests/ts/mount/fstab-devname2label
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname (fstab label)"
+LABEL="testMountD2L"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "LABEL=$LABEL"
+
+$TS_CMD_MOUNT $DEVICE 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-devname2uuid b/tests/ts/mount/fstab-devname2uuid
new file mode 100755
index 0000000..859bcda
--- /dev/null
+++ b/tests/ts/mount/fstab-devname2uuid
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname (fstab uuid)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "UUID=$UUID"
+
+$TS_CMD_MOUNT $DEVICE 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-label b/tests/ts/mount/fstab-label
new file mode 100755
index 0000000..2c1e7eb
--- /dev/null
+++ b/tests/ts/mount/fstab-label
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by label (fstab)"
+LABEL="testFstabLabel"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "LABEL=$LABEL"
+
+# variant A)
+$TS_CMD_MOUNT $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT -L $LABEL 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+# variant C)
+$TS_CMD_MOUNT LABEL=$LABEL 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "C) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "C) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-label2devname b/tests/ts/mount/fstab-label2devname
new file mode 100755
index 0000000..0d10f1b
--- /dev/null
+++ b/tests/ts/mount/fstab-label2devname
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by label (fstab devname)"
+LABEL="testMountL2D"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "$DEVICE"
+
+# variant A)
+$TS_CMD_MOUNT -L $LABEL 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT "LABEL=$LABEL" 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-label2uuid b/tests/ts/mount/fstab-label2uuid
new file mode 100755
index 0000000..0ad4f05
--- /dev/null
+++ b/tests/ts/mount/fstab-label2uuid
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by label (fstab uuid)"
+LABEL="testMountL2U"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "UUID=$UUID"
+
+# variant A)
+$TS_CMD_MOUNT -L $LABEL 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT "LABEL=$LABEL" 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-none b/tests/ts/mount/fstab-none
new file mode 100755
index 0000000..62a89ca
--- /dev/null
+++ b/tests/ts/mount/fstab-none
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="none"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+ts_fstab_add "none" "$TS_MOUNTPOINT" "tmpfs" "rw,nosuid,nodev,relatime"
+
+mkdir -p $TS_MOUNTPOINT
+
+$TS_CMD_MOUNT $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+$TS_CMD_FINDMNT --target "$TS_MOUNTPOINT" &> /dev/null
+[ $? -eq 0 ] || ts_die "Not found target (mount failed?)"
+
+$TS_CMD_FINDMNT --source "none" --target "$TS_MOUNTPOINT" &> /dev/null
+[ $? -eq 0 ] || ts_die "Not found source and target"
+
+$TS_CMD_UMOUNT $TS_MOUNTPOINT || ts_die "Cannot umount $TS_MOUNTPOINT"
+
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-symlink b/tests/ts/mount/fstab-symlink
new file mode 100755
index 0000000..7f9d91f
--- /dev/null
+++ b/tests/ts/mount/fstab-symlink
@@ -0,0 +1,68 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname (fstab symlink)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+LINKNAME="$TS_OUTDIR/${TS_TESTNAME}_lnk"
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "ext3" $DEVICE || ts_die "Cannot find ext3 on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+rm -rf $LINKNAME
+ln -s $DEVICE $LINKNAME
+
+ts_fstab_add $LINKNAME $TS_MOUNTPOINT "auto" "defaults,user"
+
+# variant A) -- UID=0
+$TS_CMD_MOUNT $LINKNAME 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $LINKNAME || ts_die "A) Cannot umount $LINKNAME" $DEVICE
+
+# varian B) -- disabled, the $TS_CMD_MOUNT is usually not a real program, but
+# libtool wrapper and the real mount is exec()ed with
+# LD_LIBRARY_PATH. This all is bad for suid programs...
+
+#ts_init_suid $TS_CMD_MOUNT
+#ts_init_suid $TS_CMD_UMOUNT
+#
+#su $TS_TESTUSER -c "$TS_CMD_MOUNT -v -v -v $LINKNAME" 2>&1 >> $TS_OUTPUT
+#ts_is_mounted $DEVICE
+# || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+#su $TS_TESTUSER -c "$TS_CMD_UMOUNT $LINKNAME" 2>&1 >> $TS_OUTPUT \
+# || ts_die "B) Cannot umount $LINKNAME" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+rm -f $LINKNAME
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-uuid b/tests/ts/mount/fstab-uuid
new file mode 100755
index 0000000..8c65b4d
--- /dev/null
+++ b/tests/ts/mount/fstab-uuid
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by uuid (fstab)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "UUID=$UUID"
+
+# varian A)
+$TS_CMD_MOUNT $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# varian B)
+$TS_CMD_MOUNT -U $UUID 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+# varian C)
+$TS_CMD_MOUNT UUID=$UUID 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "C) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "C) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-uuid2devname b/tests/ts/mount/fstab-uuid2devname
new file mode 100755
index 0000000..51bac14
--- /dev/null
+++ b/tests/ts/mount/fstab-uuid2devname
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by uuid (fstab devname)"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "$DEVICE"
+
+# variant A)
+$TS_CMD_MOUNT -U $UUID 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT "UUID=$UUID" 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/fstab-uuid2label b/tests/ts/mount/fstab-uuid2label
new file mode 100755
index 0000000..442cdb7
--- /dev/null
+++ b/tests/ts/mount/fstab-uuid2label
@@ -0,0 +1,59 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by uuid (fstab label)"
+LABEL="testMountU2L"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+ts_fstab_add "LABEL=$LABEL"
+
+# variant A)
+$TS_CMD_MOUNT -U $UUID 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT "UUID=$UUID" 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+ts_fstab_clean
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/label b/tests/ts/mount/label
new file mode 100755
index 0000000..873ea95
--- /dev/null
+++ b/tests/ts/mount/label
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by label"
+LABEL="testMountLabel"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 -L $LABEL $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+# variant A)
+$TS_CMD_MOUNT -L $LABEL $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT LABEL=$LABEL $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/move b/tests/ts/mount/move
new file mode 100755
index 0000000..3862f46
--- /dev/null
+++ b/tests/ts/mount/move
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="move"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+DIR_SRC="$TS_OUTDIR/mnt-move-src"
+DIR_A="$TS_OUTDIR/mnt-move-A"
+DIR_B="$TS_OUTDIR/mnt-move-B"
+
+[ -d $DIR_SRC ] || mkdir $DIR_SRC
+[ -d $DIR_A ] || mkdir $DIR_A
+[ -d $DIR_B ] || mkdir $DIR_B
+
+# bind
+$TS_CMD_MOUNT --bind $DIR_SRC $DIR_A
+
+# check the bind
+$TS_CMD_FINDMNT --kernel --target "$DIR_A" &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot find binded $DIR_A in /proc/self/mountinfo"
+
+# move
+$TS_CMD_MOUNT --move $DIR_A $DIR_B
+
+# check the move
+$TS_CMD_FINDMNT --kernel --target "$DIR_B" &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot find binded $DIR_B in /proc/self/mountinfo"
+
+# clean up
+$TS_CMD_UMOUNT $DIR_B
+rmdir $DIR_SRC $DIR_A $DIR_B
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/noncanonical b/tests/ts/mount/noncanonical
new file mode 100755
index 0000000..1d28304
--- /dev/null
+++ b/tests/ts/mount/noncanonical
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="non canonical path"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+[ ! -e "/etc" ] && ts_skip "/etc not such file of directory"
+
+$TS_CMD_MOUNT -V | grep -q "libmount"
+[ $? -eq 0 ] && ts_skip "libmount version"
+
+# Don't canonicalize SPEC for cifs, nfs, smbfs, ...
+$TS_CMD_MOUNT -v -v -v -f -i -n -t cifs //etc /foo | grep "spec:" >> $TS_OUTPUT 2>&1
+
+# Canonicalize when FS type undefined and the SPEC exists
+$TS_CMD_MOUNT -v -v -v -f -i -n //etc /foo | grep "spec:" >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/mount/paths b/tests/ts/mount/paths
new file mode 100755
index 0000000..0b3432b
--- /dev/null
+++ b/tests/ts/mount/paths
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="basic paths"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+$TS_CMD_MOUNT -V | grep -q "libmount"
+[ $? -eq 0 ] && ts_skip "libmount version"
+
+$TS_CMD_MOUNT -n -f -v -v -v /dev/dummy /mnt &> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/mount/regfile b/tests/ts/mount/regfile
new file mode 100755
index 0000000..8d786ad
--- /dev/null
+++ b/tests/ts/mount/regfile
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+# Copyright (C) 2011 Karel Zak <kzak@redhat.com>
+# This file is part of util-linux.
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="regular file"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+IMAGE=$(ts_image_init)
+mkfs.ext3 -F $IMAGE &> /dev/null || ts_die "Cannot make ext3 on $IMAGE"
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+$TS_CMD_MOUNT $IMAGE $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+
+DEVICE=$(awk '/regfile/ { print $1 }' /proc/mounts)
+
+ts_is_mounted "$TS_MOUNTPOINT" || ts_die "Cannot find $TS_MOUNTPOINT in /proc/mounts"
+
+if [ -f "/sys/block/$(basename $DEVICE)/loop/backing_file" ]; then
+ $TS_CMD_UMOUNT $IMAGE || ts_die "Cannot umount $IMAGE"
+else
+ $TS_CMD_UMOUNT $TS_MOUNTPOINT &> /dev/null
+ ts_skip "too old kernel"
+fi
+
+ts_is_mounted "$TS_MOUNTPOINT" && ts_die "$TS_MOUNTPOINT still in /proc/mounts"
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/remount b/tests/ts/mount/remount
new file mode 100755
index 0000000..051c595
--- /dev/null
+++ b/tests/ts/mount/remount
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="remount"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+# mountpoint
+[ -d $TS_MOUNTPOINT ] || mkdir -p $TS_MOUNTPOINT
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext2 $DEVICE &> /dev/null || ts_die "Cannot make ext2 on $DEVICE" $DEVICE
+
+# mount read-write
+$TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT || ts_die "Cannot mount $TS_MOUNTPOINT" $DEVICE
+
+# check the mount
+egrep -q "^$DEVICE $TS_MOUNTPOINT" /etc/mtab \
+ || ts_die "Cannot find $TS_MOUNTPOINT in /etc/mtab" $DEVICE
+
+# remount
+$TS_CMD_MOUNT -o remount,ro $TS_MOUNTPOINT \
+ || ts_die "Cannot remount $TS_MOUNTPOINT" $DEVICE
+
+# check the remount
+$TS_CMD_FINDMNT --kernel --target "$TS_MOUNTPOINT" --options "ro" &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot find read-only in $TS_MOUNTPOINT in /proc/self/mountinfo"
+
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/rlimit b/tests/ts/mount/rlimit
new file mode 100755
index 0000000..7d7e42b
--- /dev/null
+++ b/tests/ts/mount/rlimit
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+#
+# The /etc/mtab file should not be modified if RLIMIT_FSIZE (ulimit -f)
+# is too low, otherwise the file could be corrupted (incomplete write).
+# The [u]mount(8) has to block SIGXFSZ and check if all writes and fflush
+# calls are successful.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="rlimit-fsize"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+[ -L /etc/mtab ] && ts_skip "mtab is symlink"
+[ "$(stat --format '%s' /etc/mtab)" -gt "1024" ] || ts_skip "mtab is too small"
+
+set -o pipefail
+
+function mtab_checksum()
+{
+ md5sum /etc/mtab | awk '{printf $1}'
+}
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+
+ts_init_subtest "mount"
+OLD_SUM=$(mtab_checksum)
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+(
+ ulimit -f 1
+ $TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT
+) &> /dev/null
+NEW_SUM=$(mtab_checksum)
+$TS_CMD_UMOUNT $TS_MOUNTPOINT &> /dev/null
+[ $NEW_SUM = $OLD_SUM ] && echo "OK: mtab unmodified by mount" >> $TS_OUTPUT
+ts_finalize_subtest
+
+
+ts_init_subtest "umount"
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+$TS_CMD_MOUNT $DEVICE $TS_MOUNTPOINT &> /dev/null
+OLD_SUM=$(mtab_checksum)
+(
+ ulimit -f 1
+ $TS_CMD_UMOUNT $TS_MOUNTPOINT &> /dev/null
+) &> /dev/null
+NEW_SUM=$(mtab_checksum)
+$TS_CMD_UMOUNT $TS_MOUNTPOINT &> /dev/null
+[ $NEW_SUM = $OLD_SUM ] && echo "OK: mtab unmodified by umount" >> $TS_OUTPUT
+ts_finalize_subtest
+
+
+ts_device_deinit $DEVICE
+ts_log "Success"
+ts_finalize
diff --git a/tests/ts/mount/shared-subtree b/tests/ts/mount/shared-subtree
new file mode 100755
index 0000000..a0a76c5
--- /dev/null
+++ b/tests/ts/mount/shared-subtree
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="shared-subtree"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+function get_attr()
+{
+ # It's usually stupid idea to use 'grep | awk',
+ # but use paths in awk /regex/ is too tricky...
+ #
+ # TODO; improve libmount and findmnt to return the
+ # shared-subtree flags
+ #
+ echo $(grep "$1" /proc/self/mountinfo | \
+ awk '{print $7}' | \
+ awk -F ':' '{ print $1 }')
+}
+
+[ -d $TS_MOUNTPOINT ] || mkdir -p $TS_MOUNTPOINT
+
+# bind
+$TS_CMD_MOUNT --bind $TS_MOUNTPOINT $TS_MOUNTPOINT
+
+# check the bind
+$TS_CMD_FINDMNT --kernel --target $TS_MOUNTPOINT &> /dev/null
+[ "$?" == "0" ] || ts_die "Cannot find binded $TS_MOUNTPOINT in /proc/self/mountinfo"
+
+# use the same mounpoint for all sub-tests
+MOUNTPOINT="$TS_MOUNTPOINT"
+
+
+ts_init_subtest "make-shared"
+$TS_CMD_MOUNT --make-shared $MOUNTPOINT >> $TS_OUTPUT 2>&1
+echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "make-private"
+$TS_CMD_MOUNT --make-private $MOUNTPOINT >> $TS_OUTPUT 2>&1
+echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT
+ts_finalize_subtest
+
+ts_init_subtest "make-unbindable"
+$TS_CMD_MOUNT --make-unbindable $MOUNTPOINT >> $TS_OUTPUT 2>&1
+echo "$(get_attr $MOUNTPOINT)" >> $TS_OUTPUT
+ts_finalize_subtest
+
+
+# clean up
+$TS_CMD_UMOUNT $TS_MOUNTPOINT
+rmdir $TS_MOUNTPOINT
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/mount/special b/tests/ts/mount/special
new file mode 100755
index 0000000..6e198b3
--- /dev/null
+++ b/tests/ts/mount/special
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="call mount.<type>"
+MOUNTER="/sbin/mount.mytest"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+cat > $MOUNTER <<\EOF
+#!/bin/bash
+# This util-linux regression test component
+# It's safe to remove me...
+#
+echo "$0 called with \"$*\""
+EOF
+chmod +x $MOUNTER
+
+$TS_CMD_MOUNT -t mytest /foo /bar &> $TS_OUTPUT
+
+rm -f $MOUNTER
+
+ts_finalize
+
diff --git a/tests/ts/mount/uuid b/tests/ts/mount/uuid
new file mode 100755
index 0000000..e29ad39
--- /dev/null
+++ b/tests/ts/mount/uuid
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by uuid"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+mkfs.ext3 $DEVICE &> /dev/null || ts_die "Cannot make ext3 on $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+[ -d "$TS_MOUNTPOINT" ] || mkdir -p $TS_MOUNTPOINT
+
+# variant A)
+$TS_CMD_MOUNT -U $UUID $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "A) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "A) Cannot umount $DEVICE" $DEVICE
+
+# variant B)
+$TS_CMD_MOUNT UUID=$UUID $TS_MOUNTPOINT 2>&1 >> $TS_OUTPUT
+ts_is_mounted $DEVICE || ts_die "B) Cannot find $DEVICE in /proc/mounts" $DEVICE
+$TS_CMD_UMOUNT $DEVICE || ts_die "B) Cannot umount $DEVICE" $DEVICE
+
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/namei/logic b/tests/ts/namei/logic
new file mode 100755
index 0000000..eda5d1b
--- /dev/null
+++ b/tests/ts/namei/logic
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="basic functionality"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+cd $TS_OUTDIR
+
+mkdir -p namei1/namei2
+touch namei1/namei2/a namei1/namei2/b
+
+$TS_CMD_NAMEI namei1/namei2/a >> $TS_OUTPUT 2>&1
+$TS_CMD_NAMEI namei1/namei2/b >> $TS_OUTPUT 2>&1
+$TS_CMD_NAMEI namei1/namei2/a/b >> $TS_OUTPUT 2>&1
+
+ts_finalize
+
diff --git a/tests/ts/partx/partx b/tests/ts/partx/partx
new file mode 100755
index 0000000..f09d96b
--- /dev/null
+++ b/tests/ts/partx/partx
@@ -0,0 +1,45 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2010 Davidlohr Bueso <dave@gnu.org>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="partitions probing"
+TS_IMGDIR="$TS_TOPDIR/ts/blkid/images-pt"
+
+. $TS_TOPDIR/functions.sh
+
+ts_init "$*"
+
+if [ ! -x "$TS_CMD_PARTX" ]; then
+ ts_skip "partx disabled"
+fi
+
+mkdir -p $TS_OUTDIR/images-pt
+
+for img in $(ls $TS_IMGDIR/*.img.bz2 | sort); do
+ name=$(basename $img .img.bz2)
+ outimg=$TS_OUTDIR/images-pt/${name}.img
+
+ ts_init_subtest $name
+
+ bunzip2 < $img > $outimg
+
+ $TS_CMD_PARTX $outimg &> $TS_OUTPUT
+ ts_finalize_subtest
+done
+
+ts_finalize
diff --git a/tests/ts/paths/built-in b/tests/ts/paths/built-in
new file mode 100755
index 0000000..84ee555
--- /dev/null
+++ b/tests/ts/paths/built-in
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="built-in"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+$TS_HELPER_PATHS &> $TS_OUTPUT
+
+ts_finalize
+
diff --git a/tests/ts/schedutils/cpuset b/tests/ts/schedutils/cpuset
new file mode 100755
index 0000000..f3f11dd
--- /dev/null
+++ b/tests/ts/schedutils/cpuset
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="cpuset"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+MASKS=" 0x00000001 \
+ 0x00000002 \
+ 0x00000003 \
+ 0x00000004 \
+ 0x00000005 \
+ 0x00000006 \
+ 0x00000007 \
+ 0x00000008 \
+ 0x00000009 \
+ 0x00005555 \
+ 0x00007777"
+
+RANGES="0 \
+ 1 \
+ 0,1 \
+ 2 \
+ 0,2 \
+ 1,2 \
+ 0-2 \
+ 3 \
+ 0,3 \
+ 0,2,4,6,8,10,12,14 \
+ 0-2,4-6,8-10,12-14"
+
+ts_log "masks:"
+for i in $MASKS; do
+ $TS_HELPER_CPUSET --mask $i >> $TS_OUTPUT
+done
+
+ts_log "strings:"
+for i in $RANGES; do
+ $TS_HELPER_CPUSET --range $i >> $TS_OUTPUT
+done
+
+ts_finalize
diff --git a/tests/ts/script/race b/tests/ts/script/race
new file mode 100755
index 0000000..e482264
--- /dev/null
+++ b/tests/ts/script/race
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="race conditions"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+
+bingofile="$TS_OUTDIR/${TS_TESTNAME}-bingo"
+
+set -o pipefail
+
+for i in `seq 1 1000`; do
+ $TS_CMD_SCRIPT -q -c "printf 'Bingo\n'" $bingofile
+done | grep -c Bingo >> $TS_OUTPUT
+
+rm -f $bingofile
+
+ts_finalize
+
diff --git a/tests/ts/swapon/devname b/tests/ts/swapon/devname
new file mode 100755
index 0000000..cbab128
--- /dev/null
+++ b/tests/ts/swapon/devname
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by devname"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+$TS_CMD_MKSWAP $DEVICE > /dev/null 2>> $TS_OUTPUT \
+ || ts_die "Cannot make swap $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "swap" $DEVICE || ts_die "Cannot find swap on $DEVICE" $DEVICE
+
+$TS_CMD_SWAPON $DEVICE 2>&1 >> $TS_OUTPUT
+
+grep -q $DEVICE /proc/swaps || ts_die "Cannot find $DEVICE in /proc/swaps" $DEVICE
+
+$TS_CMD_SWAPOFF $DEVICE
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/swapon/fixpgsz b/tests/ts/swapon/fixpgsz
new file mode 100755
index 0000000..0a694ad
--- /dev/null
+++ b/tests/ts/swapon/fixpgsz
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="fix page size"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+PAGESIZE=$($TS_HELPER_SYSINFO pagesize)
+
+#
+# Create a swap-area with incompatible page size
+#
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+if [ $(( 64 * 1024 )) -ne $PAGESIZE ]; then
+ BADSIZE=$(( 64 * 1024 ))
+else
+ BADSIZE=4096
+fi
+
+DEVICE=$(ts_device_init)
+
+$TS_CMD_MKSWAP -L MyFooBarLabel --pagesize $BADSIZE $DEVICE > /dev/null &> /dev/null \
+ || ts_die "Cannot make swap $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "swap" $DEVICE || ts_die "Cannot find swap on $DEVICE" $DEVICE
+
+#
+# Swapon
+#
+$TS_CMD_SWAPON --fixpgsz $DEVICE &> /dev/null
+
+grep -q $DEVICE /proc/swaps || ts_die "Cannot find $DEVICE in /proc/swaps" $DEVICE
+
+$TS_CMD_SWAPOFF $DEVICE
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/swapon/fixsig b/tests/ts/swapon/fixsig
new file mode 100755
index 0000000..2005dec
--- /dev/null
+++ b/tests/ts/swapon/fixsig
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="fix signature"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+PAGESIZE=$($TS_HELPER_SYSINFO pagesize)
+
+#
+# Create a swap-area
+#
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+$TS_CMD_MKSWAP $DEVICE > /dev/null 2>> $TS_OUTPUT \
+ || ts_die "Cannot make swap $DEVICE" $DEVICE
+
+ts_device_has "TYPE" "swap" $DEVICE || ts_die "Cannot find swap on $DEVICE" $DEVICE
+
+#
+# Rewrite signature to swsuspend
+#
+echo "S2SUSPEND " > $TS_OUTPUT.signature
+dd if=$TS_OUTPUT.signature of=$DEVICE \
+ seek=$(( $PAGESIZE - 10 )) count=10 bs=1 conv=notrunc &> /dev/null
+
+ts_device_has "TYPE" "swsuspend" $DEVICE || ts_die "Cannot find swsuspend on $DEVICE" $DEVICE
+
+#
+# Swapon
+#
+$TS_CMD_SWAPON $DEVICE &> /dev/null
+
+grep -q $DEVICE /proc/swaps || ts_die "Cannot find $DEVICE in /proc/swaps" $DEVICE
+
+$TS_CMD_SWAPOFF $DEVICE
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/swapon/label b/tests/ts/swapon/label
new file mode 100755
index 0000000..5df0541
--- /dev/null
+++ b/tests/ts/swapon/label
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by label"
+LABEL="testSwapLabel"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+$TS_CMD_MKSWAP -L $LABEL $DEVICE > /dev/null 2>> $TS_OUTPUT \
+ || ts_die "Cannot make swap on $DEVICE" $DEVICE
+
+ts_device_has "LABEL" $LABEL $DEVICE \
+ || ts_die "Cannot find LABEL '$LABEL' on $DEVICE" $DEVICE
+
+$TS_CMD_SWAPON -L $LABEL 2>&1 >> $TS_OUTPUT
+
+grep -q $DEVICE /proc/swaps || ts_die "Cannot find $DEVICE in /proc/swaps" $DEVICE
+
+$TS_CMD_SWAPOFF $DEVICE
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+
diff --git a/tests/ts/swapon/uuid b/tests/ts/swapon/uuid
new file mode 100755
index 0000000..f40720c
--- /dev/null
+++ b/tests/ts/swapon/uuid
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+#
+# Copyright (C) 2007 Karel Zak <kzak@redhat.com>
+#
+# This file is part of util-linux.
+#
+# This file 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 file 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.
+#
+TS_TOPDIR="$(dirname $0)/../.."
+TS_DESC="by uuid"
+
+. $TS_TOPDIR/functions.sh
+ts_init "$*"
+ts_skip_nonroot
+
+set -o pipefail
+
+DEVICE=$(ts_device_init)
+[ "$?" == 0 ] || ts_die "Cannot init device"
+
+$TS_CMD_MKSWAP $DEVICE > /dev/null 2>> $TS_OUTPUT \
+ || ts_die "Cannot make swap $DEVICE" $DEVICE
+
+ts_device_has_uuid $DEVICE || ts_die "Cannot find UUID on $DEVICE" $DEVICE
+
+UUID=$(ts_uuid_by_devname $DEVICE)
+
+$TS_CMD_SWAPON -U $UUID 2>&1 >> $TS_OUTPUT
+
+grep -q $DEVICE /proc/swaps || ts_die "Cannot find $DEVICE in /proc/swaps" $DEVICE
+
+$TS_CMD_SWAPOFF $DEVICE
+ts_device_deinit $DEVICE
+
+ts_log "Success"
+ts_finalize
+