[19:24 peter@penguin:/mnt/downloads/mandrake/8.2/tree/i586/misc]$ ./MakeCD
Segmentation fault
I used rsync to update a copy of cooker and cooker-contrib to 8.2 to save
time - I only have a 56K modem with typical download speed of 4.7Kb/s.
Now that I have the 8.2 tree I wanted to make my own CDs. Here's the
strace:
[19:24 peter@penguin:/mnt/downloads/mandrake/8.2/tree/i586/misc]$ strace
./MakeCD execve("./MakeCD", ["./MakeCD"], [/* 61 vars */]) =
0
uname({sys="Linux", node="penguin.ruskin", ...}) = 0
brk(0) = 0x80dacd0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40016000
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("i686/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("i686/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/usr/lib/i686/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such
file or directory)
stat64("/usr/lib/i686/mmx", 0xbfffe63c) = -1 ENOENT (No such file or
directory)
open("/usr/lib/i686/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory)
stat64("/usr/lib/i686", 0xbfffe63c) = -1 ENOENT (No such file or
directory) open("/usr/lib/mmx/libtermcap.so.2", O_RDONLY)
= -1 ENOENT (No such file or directory) stat64("/usr/lib/mmx",
0xbfffe63c) = -1 ENOENT (No such file or directory)
open("/usr/lib/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory) stat64("/usr/lib", {st_mode=S_IFDIR|0755,
st_size=57344, ...}) = 0
open("/usr/lib/qt2/lib/i686/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT
(No such file or directory)
stat64("/usr/lib/qt2/lib/i686/mmx", 0xbfffe63c) = -1 ENOENT (No such file
or directory) open("/usr/lib/qt2/lib/i686/libtermcap.so.2",
O_RDONLY) = -1 ENOENT (No such file or
directory)stat64("/usr/lib/qt2/lib/i686", 0xbfffe63c) = -1 ENOENT (No
such file or directory)
open("/usr/lib/qt2/lib/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No
such file or directory) stat64("/usr/lib/qt2/lib/mmx", 0xbfffe63c) = -1
ENOENT (No such file or directory)
open("/usr/lib/qt2/lib/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such
file or directory) stat64("/usr/lib/qt2/lib", {st_mode=S_IFDIR|0755,
st_size=4096, ...}) = 0
open("/lib/i686/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory) stat64("/lib/i686/mmx", 0xbfffe63c) = -1 ENOENT
(No such file or directory)
open("/lib/i686/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory) stat64("/lib/i686", 0xbfffe63c) = -1 ENOENT
(No such file or directory)
open("/lib/mmx/libtermcap.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory) stat64("/lib/mmx", 0xbfffe63c) = -1
ENOENT (No such file or directory)
open("/lib/libtermcap.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\r\0"..., 1024) =
1024 fstat64(3, {st_mode=S_IFREG|0755, st_size=11992, ...}) =
0 old_mmap(NULL, 15092,
PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40017000
mprotect(0x4001a000, 2804, PROT_NONE) = 0
old_mmap(0x4001a000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x4001a000close(3)
= 0
open("i686/mmx/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory) open("i686/libdl.so.2", O_RDONLY) = -1
ENOENT (No such file or directory) open("mmx/libdl.so.2",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or
directory) open("/usr/lib/libdl.so.2", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/lib/qt2/lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file
or directory) open("/lib/libdl.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360\35"..., 1024) = 1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=9788, ...}) = 0
old_mmap(NULL, 12668,
PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001b000
mprotect(0x4001d000, 4476, PROT_NONE) = 0
old_mmap(0x4001d000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x1000) = 0x4001d000close(3)
= 0
open("i686/mmx/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or
directory) open("i686/libc.so.6", O_RDONLY) = -1
ENOENT (No such file or directory) open("mmx/libc.so.6",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("libc.so.6", O_RDONLY) = -1 ENOENT (No such file or
directory) open("/usr/lib/libc.so.6", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/lib/qt2/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or
directory) open("/lib/libc.so.6", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\306"..., 1024) =
1024 fstat64(3, {st_mode=S_IFREG|0755, st_size=1285480, ...})
= 0 old_mmap(NULL, 1301800,
PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4001f000
mprotect(0x40154000, 36136, PROT_NONE) = 0
old_mmap(0x40154000, 20480, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x134000) = 0x40154000
old_mmap(0x40159000, 15656, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40159000
close(3) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
open("/dev/tty",
O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3
close(3) = 0
brk(0) =
0x80dacd0 brk(0x80db000)
= 0x80db000
brk(0x80dc000) = 0x80dc000
brk(0x80dd000) = 0x80dd000
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2601,
...}) = 0 old_mmap(NULL, 4096,
PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4015d000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2601
brk(0x80de000) = 0x80de000
brk(0x80df000)
= 0x80df000
brk(0x80e0000) = 0x80e0000
read(3, "", 4096) = 0
close(3)
= 0
munmap(0x4015d000, 4096) = 0
brk(0x80e1000) = 0x80e1000
open("/usr/share/locale/en_GB.ISO-8859-15/LC_IDENTIFICATION", O_RDONLY) =
3 fstat64(3, {st_mode=S_IFREG|0644, st_size=440, ...})
= 0 old_mmap(NULL, 440, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x4015d000 close(3)
= 0
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644,
st_size=0, ...}) = 0 close(3)
= 0
open("/usr/lib/gconv/gconv-modules", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644,
st_size=43675, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x4015e000 read(3, "# GNU libc iconv configuration.\n"...,
4096) = 4096 read(3,
"2\n\nalias\tISO-IR-141//\t\tJUS_I.B1."..., 4096) = 4096
brk(0x80e2000) = 0x80e2000
brk(0x80e3000)
= 0x80e3000 read(3,
"SF00010003//\t\tISO-8859-3//\nmodul"..., 4096) = 4096
brk(0x80e4000) = 0x80e4000
brk(0x80e5000)
= 0x80e5000 brk(0x80e6000)
= 0x80e6000
read(3, "/\nalias\tLATIN8//\t\tISO-8859-14//\n"..., 4096) = 4096
brk(0x80e7000) =
0x80e7000 brk(0x80e8000)
= 0x80e8000
read(3, "ias\tCSEBCDICESS//\t\tEBCDIC-ES-S//"..., 4096) = 4096
brk(0x80e9000) = 0x80e9000
brk(0x80ea000)
= 0x80ea000
brk(0x80eb000) = 0x80eb000
read(3,
"RNAL\t\tIBM285\t\t1\nmodule\tINTERNAL\t"..., 4096) = 4096
brk(0x80ec000) = 0x80ec000
brk(0x80ed000)
= 0x80ed000 brk(0x80ee000)
= 0x80ee000
read(3, "lias\tCP866//\t\t\tIBM866//\nalias\t86"..., 4096) = 4096
brk(0x80ef000) =
0x80ef000 brk(0x80f0000)
= 0x80f0000
read(3, "M1004\t\t1\nmodule\tINTERNAL\t\tIBM100"..., 4096) = 4096
brk(0x80f1000) = 0x80f1000
brk(0x80f2000)
= 0x80f2000
brk(0x80f3000) = 0x80f3000
brk(0x80f4000) = 0x80f4000
read(3,
"DOWS-1258//\t\tCP1258//\nmodule\tCP1"..., 4096) = 4096
brk(0x80f5000) = 0x80f5000
brk(0x80f6000)
= 0x80f6000 brk(0x80f7000)
= 0x80f7000
read(3, "rom\t\t\tto\t\t\tmodule\t\tcost\nalias\tIS"..., 4096) = 4096
brk(0x80f8000) =
0x80f8000 brk(0x80f9000)
= 0x80f9000
read(3, "1\nmodule\tINTERNAL\t\tUTF-32//\t\tUTF"..., 4096) = 2715
brk(0x80fa000) = 0x80fa000
brk(0x80fb000)
= 0x80fb000 read(3,
"", 4096) = 0
close(3) = 0
munmap(0x4015e000, 4096)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_MEASUREMENT", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=29, ...})
= 0 old_mmap(NULL, 29, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x4015e000 close(3)
= 0
brk(0x80fc000) = 0x80fc000
open("/usr/share/locale/en_GB.ISO-8859-15/LC_TELEPHONE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=56, ...})
= 0 old_mmap(NULL, 56, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x4015f000
brk(0x80fd000) = 0x80fd000
close(3) = 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_ADDRESS", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=133, ...})
= 0 old_mmap(NULL, 133, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x40160000 close(3)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_NAME", O_RDONLY)
= 3 fstat64(3, {st_mode=S_IFREG|0644,
st_size=68, ...}) = 0
old_mmap(NULL, 68, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40161000
close(3) = 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_PAPER", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=40, ...})
= 0 old_mmap(NULL, 40, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x40162000 close(3)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_MESSAGES",
O_RDONLY) = 3 fstat64(3, {st_mode=S_IFDIR|0755,
st_size=4096, ...}) = 0 close(3)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_MESSAGES/SYS_LC_MESSAGES",
O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=58,
...}) = 0 old_mmap(NULL, 58,
PROT_READ, MAP_PRIVATE, 3, 0) = 0x40163000
close(3) = 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_MONETARY", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=292, ...})
= 0 old_mmap(NULL, 292, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x40164000
brk(0x80fe000) = 0x80fe000
close(3) = 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_COLLATE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=22592,
...}) = 0 old_mmap(NULL, 22592,
PROT_READ, MAP_PRIVATE, 3, 0) = 0x40165000
close(3) = 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_TIME",
O_RDONLY) = 3 fstat64(3,
{st_mode=S_IFREG|0644, st_size=2381, ...}) = 0
old_mmap(NULL, 2381, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4016b000
brk(0x80ff000) =
0x80ff000 close(3)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_NUMERIC", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=60, ...})
= 0 old_mmap(NULL, 60, PROT_READ,
MAP_PRIVATE, 3, 0) = 0x4016c000 close(3)
= 0
open("/usr/share/locale/en_GB.ISO-8859-15/LC_CTYPE",
O_RDONLY) = 3 fstat64(3,
{st_mode=S_IFREG|0644, st_size=173660, ...}) = 0
old_mmap(NULL, 173660, PROT_READ, MAP_PRIVATE, 3, 0) =
0x4016d000 close(3)
= 0 getuid32()
= 501
getgid32() = 501
geteuid32() =
501 getegid32()
= 501
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
time(NULL) = 1016739000
brk(0x8100000)
= 0x8100000
open("/etc/mtab", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1996,
...}) = 0 old_mmap(NULL, 4096,
PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40198000
read(3, "/dev/hdf5 / ext3 rw 0 0\nnone /pr"..., 4096) = 1996
close(3) = 0
munmap(0x40198000, 4096)
= 0
open("/proc/meminfo", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) =
0 old_mmap(NULL, 8192,
PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40198000
read(3, " total: used: free:"..., 8192) = 605
close(3) = 0
munmap(0x40198000, 8192)
= 0
brk(0x8101000) = 0x8101000
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGCHLD,
{SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT,
{SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigaction(SIGQUIT,
{SIG_IGN}, {SIG_DFL}, 8) = 0
uname({sys="Linux", node="penguin.ruskin", ...}) = 0
brk(0x8102000) = 0x8102000
brk(0x8103000)
= 0x8103000
brk(0x8104000) = 0x8104000
brk(0x8105000) = 0x8105000
brk(0x8106000)
= 0x8106000
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
brk(0x8107000) = 0x8107000
open("/usr/lib/gconv/ISO8859-15.so", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\6\0"..., 1024) =
1024 fstat64(3, {st_mode=S_IFREG|0755, st_size=7224, ...}) =
0 brk(0x8108000)
= 0x8108000
old_mmap(NULL, 10184, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x40198000 mprotect(0x4019a000, 1992, PROT_NONE) =
0 old_mmap(0x4019a000,
4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1000) =
0x4019a000close(3) = 0
brk(0x8109000) =
0x8109000
stat64("/mnt/downloads/mandrake/8.2/tree/i586/misc",
{st_mode=S_IFDIR|S_ISGID|0755, st_size=1024, ...}) = 0
stat64(".", {st_mode=S_IFDIR|S_ISGID|0755, st_size=1024, ...}) = 0
getpid() = 6468
getppid()
= 6467 getpgrp()
= 6467
rt_sigaction(SIGCHLD, {0x8075490, [], 0x4000000}, {SIG_DFL}, 8)
= 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) =
0 open("./MakeCD",
O_RDONLY|O_LARGEFILE) = 3
ioctl(3, 0x5401, 0xbffff240) = -1 ENOTTY (Inappropriate
ioctl for device) _llseek(3, 0, [0], SEEK_CUR) = 0
read(3, "#!/bin/sh\n#\n#
MakeCD version 0.1"..., 80) = 80
_llseek(3, 0, [0], SEEK_SET) = 0
getrlimit(0x7, 0xbffff2b8) = 0
dup2(3, 255)
= 255 close(3)
= 0
fcntl64(0xff, 0x2, 0x1, 0xbffff370) = 0
fcntl64(0xff, 0x3, 0, 0) =
32768 fstat64(255,
{st_mode=S_IFREG|0755, st_size=917, ...}) = 0
_llseek(255, 0, [0], SEEK_CUR) = 0
brk(0x810a000) =
0x810a000
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "#!/bin/sh\n#\n# MakeCD version 0.1"...,
917) = 917 rt_sigprocmask(SIG_BLOCK,
NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL,
[], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL,
[], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
brk(0x810b000) = 0x810b000
pipe([3, 4])
= 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -796, [121], SEEK_CUR) = 0
fork()
= 6469
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGCHLD, {0x8075490, [], 0x4000000},
{0x8075490, [], 0x4000000}, 8) = 0 close(4)
= 0 read(3,
"../\n", 128) = 4
read(3, 0xbfffed90, 128) = ? ERESTARTSYS (To
be restarted) --- SIGCHLD (Child exited) ---
wait4(-1,
[WIFEXITED(s) && WEXITSTATUS(s) == 0], WNOHANG, NULL) = 6469
wait4(-1, 0xbfffea08, WNOHANG, NULL) = -1 ECHILD (No child
processes) sigreturn()
= ? (mask now []) read(3, "", 128)
= 0
close(3) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT,
{0x8075660, [], 0x4000000}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {0x8075660, [],
0x4000000}, 8) = 0 rt_sigprocmask(SIG_BLOCK,
NULL, [], 8) = 0
read(255, "\nPATH=\"$PATH:$REP/misc/\"\n\nexport"..., 917) = 796
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {0x8075490, [], 0x4000000}, 8) = 0
execve("/mnt/downloads/mandrake/8.2/tree/i586/misc/..//Mandrake/mdkinst/lib/ld-linux.so.2",
["..//Mandrake/mdkinst/lib/ld-linu"..., "--library-path",
"..//Mandrake/mdkinst/lib/:..//Ma"...,
"..//Mandrake/mdkinst/usr/bin/per"..., "-I",
"..//Mandrake/mdkinst/usr/lib/per"..., "..//misc/mkcd"], [/* 60 vars */])
= 0
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++
--
Peter Ruskin, Wrexham, Wales. AMD Athlon XP 1600+, 512MB RAM.
Registered Linux User 219434. Mandrake Linux release 8.1 (Vitamin)
Kernel 2.4.8-34.1mdk-win4lin, XFree86 4.1.0, patch level 21mdk.
KDE: 2.2.2. Qt: 2.3.2. Up 1 hour 33 minutes.