summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/basename.phpt
blob: 8352f4da4b62d4bd6339a22a85b1905291097901 (plain)
ofshex dumpascii
0000 2d 2d 54 45 53 54 2d 2d 0a 62 61 73 65 6e 61 6d 65 0a 2d 2d 43 52 45 44 49 54 53 2d 2d 0a 44 61 --TEST--.basename.--CREDITS--.Da
0020 76 65 20 4b 65 6c 73 65 79 20 3c 64 5f 6b 65 6c 73 65 79 40 75 6b 2e 69 62 6d 2e 63 6f 6d 3e 0a ve.Kelsey.<d_kelsey@uk.ibm.com>.
0040 2d 2d 46 49 4c 45 2d 2d 0a 3c 3f 70 68 70 0a 2f 2a 0a 20 2a 20 70 72 6f 74 6f 20 73 74 72 69 6e --FILE--.<?php./*..*.proto.strin
0060 67 20 62 61 73 65 6e 61 6d 65 28 73 74 72 69 6e 67 20 70 61 74 68 20 5b 2c 20 73 74 72 69 6e 67 g.basename(string.path.[,.string
0080 20 73 75 66 66 69 78 5d 29 0a 20 2a 20 46 75 6e 63 74 69 6f 6e 20 69 73 20 69 6d 70 6c 65 6d 65 .suffix])..*.Function.is.impleme
00a0 6e 74 65 64 20 69 6e 20 65 78 74 2f 73 74 61 6e 64 61 72 64 2f 73 74 72 69 6e 67 2e 63 0a 20 2a nted.in.ext/standard/string.c..*
00c0 2f 0a 24 66 69 6c 65 5f 70 61 74 68 73 20 3d 20 61 72 72 61 79 20 28 0a 20 20 2f 2a 20 73 69 6d /.$file_paths.=.array.(.../*.sim
00e0 70 6c 65 20 70 61 74 68 73 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 62 61 72 22 29 2c 0a 20 20 61 ple.paths.*/...array("bar"),...a
0100 72 72 61 79 28 22 2f 66 6f 6f 2f 62 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 22 66 6f 6f 2f 62 rray("/foo/bar"),...array("foo/b
0120 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 62 61 72 22 29 2c 0a 0a 20 20 2f 2a 20 73 69 6d ar"),...array("/bar"),..../*.sim
0140 70 6c 65 20 70 61 74 68 73 20 77 69 74 68 20 74 72 61 69 6c 69 6e 67 20 73 6c 61 73 68 65 73 20 ple.paths.with.trailing.slashes.
0160 2a 2f 0a 20 20 61 72 72 61 79 28 22 62 61 72 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 62 61 */...array("bar/"),...array("/ba
0180 72 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 66 6f 6f 2f 62 61 72 2f 22 29 2c 0a 20 20 61 72 r/"),...array("/foo/bar/"),...ar
01a0 72 61 79 28 22 66 6f 6f 2f 62 61 72 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 62 61 72 2f 22 ray("foo/bar/"),...array("/bar/"
01c0 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 69 74 68 20 73 75 66 66 69 78 20 72 65 6d 6f 76 ),..../*.paths.with.suffix.remov
01e0 61 6c 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 62 61 72 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a al.*/...array("bar.gz",.".gz"),.
0200 20 20 61 72 72 61 79 28 22 62 61 72 2e 67 7a 22 2c 20 22 62 61 72 2e 67 7a 22 29 2c 0a 20 20 61 ..array("bar.gz",."bar.gz"),...a
0220 72 72 61 79 28 22 2f 66 6f 6f 2f 62 61 72 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 rray("/foo/bar.gz",.".gz"),...ar
0240 72 61 79 28 22 66 6f 6f 2f 62 61 72 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 ray("foo/bar.gz",.".gz"),...arra
0260 79 28 22 2f 62 61 72 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 y("/bar.gz",.".gz"),..../*.paths
0280 20 77 69 74 68 20 73 75 66 66 69 78 20 61 6e 64 20 74 72 61 69 6c 69 6e 67 20 73 6c 61 73 68 65 .with.suffix.and.trailing.slashe
02a0 73 20 77 69 74 68 20 73 75 66 66 69 78 20 72 65 6d 6f 76 61 6c 2a 2f 0a 20 20 61 72 72 61 79 28 s.with.suffix.removal*/...array(
02c0 22 62 61 72 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 62 61 72 "bar.gz/",.".gz"),...array("/bar
02e0 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 66 6f 6f 2f 62 61 72 .gz/",.".gz"),...array("/foo/bar
0300 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 66 6f 6f 2f 62 61 72 2e .gz/",.".gz"),...array("foo/bar.
0320 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 62 61 72 2e 67 7a 2f 22 gz/",.".gz"),...array("/bar.gz/"
0340 2c 20 22 2e 67 7a 22 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 69 74 68 20 62 61 73 65 6e ,.".gz"),..../*.paths.with.basen
0360 61 6d 65 20 6f 6e 6c 79 20 73 75 66 66 69 78 2c 20 77 69 74 68 20 73 75 66 66 69 78 20 72 65 6d ame.only.suffix,.with.suffix.rem
0380 6f 76 61 6c 2a 2f 0a 20 20 61 72 72 61 79 28 22 2f 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 oval*/...array("/.gz",.".gz"),..
03a0 20 61 72 72 61 79 28 22 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f .array(".gz",.".gz"),...array("/
03c0 66 6f 6f 2f 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 69 foo/.gz",.".gz"),..../*.paths.wi
03e0 74 68 20 62 61 73 65 6e 61 6d 65 20 6f 6e 6c 79 20 73 75 66 66 69 78 20 26 20 74 72 61 69 6c 69 th.basename.only.suffix.&.traili
0400 6e 67 20 73 6c 61 73 68 65 73 2c 20 77 69 74 68 20 73 75 66 66 69 78 20 72 65 6d 6f 76 61 6c 2a ng.slashes,.with.suffix.removal*
0420 2f 0a 20 20 61 72 72 61 79 28 22 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 /...array(".gz/",.".gz"),...arra
0440 79 28 22 2f 66 6f 6f 2f 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 y("/foo/.gz/",.".gz"),...array("
0460 66 6f 6f 2f 2e 67 7a 2f 22 2c 20 22 2e 67 7a 22 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 foo/.gz/",.".gz"),..../*.paths.w
0480 69 74 68 20 62 69 6e 61 72 79 20 76 61 6c 75 65 20 74 6f 20 63 68 65 63 6b 20 69 66 20 74 68 65 ith.binary.value.to.check.if.the
04a0 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 62 69 6e 61 72 79 20 73 61 66 65 2a 2f 0a 20 20 61 72 72 .function.is.binary.safe*/...arr
04c0 61 79 28 22 66 6f 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 ay("foo".chr(0)."bar"),...array(
04e0 22 2f 66 6f 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f "/foo".chr(0)."bar"),...array("/
0500 66 6f 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 66 6f foo".chr(0)."bar/"),...array("fo
0520 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 66 6f 6f 22 o".chr(0)."bar/"),...array("foo"
0540 2e 63 68 72 28 30 29 2e 22 62 61 72 2f 74 65 73 74 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 66 .chr(0)."bar/test"),...array("/f
0560 6f 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 2f 62 61 72 2e 67 7a 22 2c 20 22 2e 67 7a 22 29 2c oo".chr(0)."bar/bar.gz",.".gz"),
0580 0a 20 20 61 72 72 61 79 28 22 2f 66 6f 6f 22 2e 63 68 72 28 30 29 2e 22 62 61 72 2f 62 61 72 2e ...array("/foo".chr(0)."bar/bar.
05a0 67 7a 22 29 0a 29 3b 0a 0a 24 66 69 6c 65 5f 70 61 74 68 5f 76 61 72 69 61 74 69 6f 6e 73 20 3d gz").);..$file_path_variations.=
05c0 20 61 72 72 61 79 20 28 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 69 74 68 20 73 68 6f 72 74 63 75 .array.(.../*.paths.with.shortcu
05e0 74 20 68 6f 6d 65 20 64 69 72 20 63 68 61 72 2c 20 77 69 74 68 20 73 75 66 66 69 78 20 76 61 72 t.home.dir.char,.with.suffix.var
0600 69 61 74 69 6f 6e 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 iation.*/...array("~/home/user/b
0620 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 22 2c ar"),...array("~/home/user/bar",
0640 20 22 22 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 22 2c .""),...array("~/home/user/bar",
0660 20 4e 55 4c 4c 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 .NULL),...array("~/home/user/bar
0680 22 2c 20 27 20 27 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 ",.'.'),...array("~/home/user/ba
06a0 72 2e 74 61 72 22 2c 20 22 2e 74 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 r.tar",.".tar"),...array("~/home
06c0 2f 75 73 65 72 2f 62 61 72 2e 74 61 72 22 2c 20 22 7e 22 29 2c 0a 20 20 61 72 72 61 79 28 22 7e /user/bar.tar",."~"),...array("~
06e0 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 2e 74 61 72 2f 22 2c 20 22 7e 22 29 2c 0a 20 20 61 72 /home/user/bar.tar/",."~"),...ar
0700 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 2e 74 61 72 2f 22 2c 20 22 22 29 2c ray("~/home/user/bar.tar/",.""),
0720 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 2e 74 61 72 22 2c 20 ...array("~/home/user/bar.tar",.
0740 4e 55 4c 4c 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 2e NULL),...array("~/home/user/bar.
0760 74 61 72 22 2c 20 27 27 29 2c 0a 20 20 61 72 72 61 79 28 22 7e 2f 68 6f 6d 65 2f 75 73 65 72 2f tar",.''),...array("~/home/user/
0780 62 61 72 2e 74 61 72 22 2c 20 22 20 22 29 2c 0a 0a 20 20 2f 2a 20 70 61 74 68 73 20 77 69 74 68 bar.tar",."."),..../*.paths.with
07a0 20 68 6f 73 74 6e 61 6d 65 3a 64 69 72 20 6e 6f 74 61 74 69 6f 6e 2c 20 77 69 74 68 20 73 75 66 .hostname:dir.notation,.with.suf
07c0 66 69 78 20 76 61 72 69 61 74 69 6f 6e 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 fix.variation.*/...array("hostna
07e0 6d 65 3a 2f 68 6f 6d 65 2f 75 73 72 2f 62 61 72 2e 74 61 72 22 29 2c 0a 20 20 61 72 72 61 79 28 me:/home/usr/bar.tar"),...array(
0800 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 62 61 72 2e 74 61 72 22 2c 20 22 "hostname:/home/user/bar.tar",."
0820 68 6f 6d 65 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f home"),...array("hostname:/home/
0840 75 73 65 72 2f 74 62 61 72 2e 67 7a 22 2c 20 22 62 61 72 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 user/tbar.gz",."bar.gz"),...arra
0860 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 74 62 61 72 2e 67 7a 22 2c y("hostname:/home/user/tbar.gz",
0880 20 22 2f 62 61 72 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f ."/bar.gz"),...array("hostname:/
08a0 68 6f 6d 65 2f 75 73 65 72 2f 74 62 61 72 2e 67 7a 22 2c 20 22 2f 62 61 72 2e 67 7a 2f 22 29 2c home/user/tbar.gz",."/bar.gz/"),
08c0 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 74 62 ...array("hostname:/home/user/tb
08e0 61 72 2e 67 7a 2f 22 2c 20 22 2f 62 61 72 2e 67 7a 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 ar.gz/",."/bar.gz/"),...array("h
0900 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 74 62 61 72 2e 67 7a 2f 22 2c 20 22 2f ostname:/home/user/tbar.gz/",."/
0920 62 61 72 2e 67 7a 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f bar.gz/"),...array("hostname:/ho
0940 6d 65 2f 75 73 65 72 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 22 2f 62 61 72 2e 67 7a 2f 22 me/user/My.Pics.gz/",."/bar.gz/"
0960 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f ),...array("hostname:/home/user/
0980 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 22 50 69 63 73 2e 67 7a 2f 22 29 2c 0a 20 20 61 72 72 My.Pics.gz/",."Pics.gz/"),...arr
09a0 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 4d 79 20 50 69 63 73 2e ay("hostname:/home/user/My.Pics.
09c0 67 7a 2f 22 2c 20 22 50 69 63 73 2e 67 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e gz/",."Pics.gz"),...array("hostn
09e0 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 22 2e 67 ame:/home/user/My.Pics.gz/",.".g
0a00 7a 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 z"),...array("hostname:/home/use
0a20 72 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 r/My.Pics.gz/"),...array("hostna
0a40 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 4e 55 4c 4c me:/home/user/My.Pics.gz/",.NULL
0a60 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f ),...array("hostname:/home/user/
0a80 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 27 20 27 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 My.Pics.gz/",.'.'),...array("hos
0aa0 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 27 tname:/home/user/My.Pics.gz/",.'
0ac0 27 29 2c 0a 20 20 61 72 72 61 79 28 22 68 6f 73 74 6e 61 6d 65 3a 2f 68 6f 6d 65 2f 75 73 65 72 '),...array("hostname:/home/user
0ae0 2f 4d 79 20 50 69 63 73 2e 67 7a 2f 22 2c 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 29 2c 0a 0a 20 /My.Pics.gz/",."My.Pics.gz"),...
0b00 20 2f 2a 20 70 61 74 68 73 20 77 69 74 68 20 6e 75 6d 65 69 72 63 20 73 74 72 69 6e 67 73 20 2a ./*.paths.with.numeirc.strings.*
0b20 2f 0a 20 20 61 72 72 61 79 28 22 31 30 2e 35 22 29 2c 0a 20 20 61 72 72 61 79 28 22 31 30 2e 35 /...array("10.5"),...array("10.5
0b40 22 2c 20 22 2e 35 22 29 2c 0a 20 20 61 72 72 61 79 28 22 31 30 2e 35 22 2c 20 22 31 30 2e 35 22 ",.".5"),...array("10.5",."10.5"
0b60 29 2c 0a 20 20 61 72 72 61 79 28 22 31 30 22 29 2c 0a 20 20 61 72 72 61 79 28 22 31 30 35 22 2c ),...array("10"),...array("105",
0b80 20 22 35 22 29 2c 0a 20 20 61 72 72 61 79 28 22 2f 31 30 2e 35 22 29 2c 0a 20 20 61 72 72 61 79 ."5"),...array("/10.5"),...array
0ba0 28 22 31 30 2e 35 2f 22 29 2c 0a 20 20 61 72 72 61 79 28 22 31 30 2f 31 30 2e 67 7a 22 29 2c 0a ("10.5/"),...array("10/10.gz"),.
0bc0 20 20 61 72 72 61 79 28 22 30 22 29 2c 0a 20 20 61 72 72 61 79 28 27 30 27 29 2c 0a 0a 20 20 2f ..array("0"),...array('0'),..../
0be0 2a 20 70 61 74 68 73 20 61 6e 64 20 73 75 66 66 69 78 20 67 69 76 65 6e 20 61 73 20 73 61 6d 65 *.paths.and.suffix.given.as.same
0c00 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 62 61 72 2e 67 7a 22 2c 20 22 62 61 72 2e 67 7a 22 29 2c .*/...array("bar.gz",."bar.gz"),
0c20 0a 20 20 61 72 72 61 79 28 22 2f 62 61 72 2e 67 7a 22 2c 20 22 2f 62 61 72 2e 67 7a 22 29 2c 0a ...array("/bar.gz",."/bar.gz"),.
0c40 20 20 61 72 72 61 79 28 22 2f 62 61 72 2e 67 7a 2f 22 2c 20 22 2f 62 61 72 2e 67 7a 2f 22 29 2c ..array("/bar.gz/",."/bar.gz/"),
0c60 0a 20 20 61 72 72 61 79 28 22 20 22 2c 20 22 20 22 29 2c 0a 20 20 61 72 72 61 79 28 27 20 27 2c ...array(".",."."),...array('.',
0c80 20 27 20 27 29 2c 0a 20 20 61 72 72 61 79 28 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 2c 0a 0a 20 20 2f .'.'),...array(NULL,.NULL),..../
0ca0 2a 20 70 61 74 68 20 77 69 74 68 20 73 70 61 63 65 73 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 20 *.path.with.spaces.*/...array(".
0cc0 22 29 2c 0a 20 20 61 72 72 61 79 28 27 20 27 29 2c 0a 0a 20 20 2f 2a 20 65 6d 70 74 79 20 70 61 "),...array('.'),..../*.empty.pa
0ce0 74 68 73 20 2a 2f 0a 20 20 61 72 72 61 79 28 22 22 29 2c 0a 20 20 61 72 72 61 79 28 27 27 29 2c ths.*/...array(""),...array(''),
0d00 0a 20 20 61 72 72 61 79 28 4e 55 4c 4c 29 0a 29 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 ...array(NULL).);..function.chec
0d20 6b 5f 62 61 73 65 6e 61 6d 65 28 20 24 70 61 74 68 5f 61 72 72 61 79 73 20 29 20 7b 0a 20 20 20 k_basename(.$path_arrays.).{....
0d40 24 6c 6f 6f 70 5f 63 6f 75 6e 74 65 72 20 3d 20 31 3b 0a 20 20 20 66 6f 72 65 61 63 68 20 28 24 $loop_counter.=.1;....foreach.($
0d60 70 61 74 68 5f 61 72 72 61 79 73 20 61 73 20 24 70 61 74 68 29 20 7b 0a 20 20 20 20 20 65 63 68 path_arrays.as.$path).{......ech
0d80 6f 20 22 5c 6e 2d 2d 49 74 65 72 61 74 69 6f 6e 20 24 6c 6f 6f 70 5f 63 6f 75 6e 74 65 72 2d 2d o."\n--Iteration.$loop_counter--
0da0 5c 6e 22 3b 20 24 6c 6f 6f 70 5f 63 6f 75 6e 74 65 72 2b 2b 3b 0a 20 20 20 20 20 69 66 28 20 31 \n";.$loop_counter++;......if(.1
0dc0 20 3d 3d 20 63 6f 75 6e 74 28 24 70 61 74 68 29 20 29 20 7b 20 2f 2f 20 6e 6f 20 73 75 66 66 69 .==.count($path).).{.//.no.suffi
0de0 78 20 70 72 6f 76 69 64 65 64 0a 20 20 20 20 20 20 20 76 61 72 5f 64 75 6d 70 28 20 62 61 73 65 x.provided........var_dump(.base
0e00 6e 61 6d 65 28 24 70 61 74 68 5b 30 5d 29 20 29 3b 0a 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 20 name($path[0]).);......}.else.{.
0e20 2f 2f 20 70 61 74 68 20 61 73 20 77 65 6c 6c 20 61 73 20 73 75 66 66 69 78 20 70 72 6f 76 69 64 //.path.as.well.as.suffix.provid
0e40 65 64 2c 0a 20 20 20 20 20 20 20 76 61 72 5f 64 75 6d 70 28 20 62 61 73 65 6e 61 6d 65 28 24 70 ed,........var_dump(.basename($p
0e60 61 74 68 5b 30 5d 2c 20 24 70 61 74 68 5b 31 5d 29 20 29 3b 0a 20 20 20 20 20 7d 0a 20 20 20 7d ath[0],.$path[1]).);......}....}
0e80 0a 7d 0a 0a 65 63 68 6f 20 22 2a 2a 2a 20 54 65 73 74 69 6e 67 20 62 61 73 69 63 20 6f 70 65 72 .}..echo."***.Testing.basic.oper
0ea0 61 74 69 6f 6e 73 20 2a 2a 2a 5c 6e 22 3b 0a 63 68 65 63 6b 5f 62 61 73 65 6e 61 6d 65 28 20 24 ations.***\n";.check_basename(.$
0ec0 66 69 6c 65 5f 70 61 74 68 73 20 29 3b 0a 0a 65 63 68 6f 20 22 5c 6e 2a 2a 2a 20 54 65 73 74 69 file_paths.);..echo."\n***.Testi
0ee0 6e 67 20 70 6f 73 73 69 62 6c 65 20 76 61 72 69 61 74 69 6f 6e 73 20 69 6e 20 70 61 74 68 20 61 ng.possible.variations.in.path.a
0f00 6e 64 20 73 75 66 66 69 78 20 2a 2a 2a 5c 6e 22 3b 0a 63 68 65 63 6b 5f 62 61 73 65 6e 61 6d 65 nd.suffix.***\n";.check_basename
0f20 28 20 24 66 69 6c 65 5f 70 61 74 68 5f 76 61 72 69 61 74 69 6f 6e 73 20 29 3b 0a 0a 65 63 68 6f (.$file_path_variations.);..echo
0f40 20 22 44 6f 6e 65 5c 6e 22 3b 0a 3f 3e 0a 2d 2d 45 58 50 45 43 54 46 2d 2d 0a 2a 2a 2a 20 54 65 ."Done\n";.?>.--EXPECTF--.***.Te
0f60 73 74 69 6e 67 20 62 61 73 69 63 20 6f 70 65 72 61 74 69 6f 6e 73 20 2a 2a 2a 0a 0a 2d 2d 49 74 sting.basic.operations.***..--It
0f80 65 72 61 74 69 6f 6e 20 31 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 eration.1--.string(3)."bar"..--I
0fa0 74 65 72 61 74 69 6f 6e 20 32 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d teration.2--.string(3)."bar"..--
0fc0 49 74 65 72 61 74 69 6f 6e 20 33 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d Iteration.3--.string(3)."bar"..-
0fe0 2d 49 74 65 72 61 74 69 6f 6e 20 34 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a -Iteration.4--.string(3)."bar"..
1000 2d 2d 49 74 65 72 61 74 69 6f 6e 20 35 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a --Iteration.5--.string(3)."bar".
1020 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 36 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 .--Iteration.6--.string(3)."bar"
1040 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 37 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 ..--Iteration.7--.string(3)."bar
1060 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 38 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 "..--Iteration.8--.string(3)."ba
1080 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 39 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 r"..--Iteration.9--.string(3)."b
10a0 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 30 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 ar"..--Iteration.10--.string(3).
10c0 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 31 2d 2d 0a 73 74 72 69 6e 67 28 36 "bar"..--Iteration.11--.string(6
10e0 29 20 22 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 32 2d 2d 0a 73 74 72 )."bar.gz"..--Iteration.12--.str
1100 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 33 2d 2d 0a 73 ing(3)."bar"..--Iteration.13--.s
1120 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 34 2d 2d tring(3)."bar"..--Iteration.14--
1140 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 35 .string(3)."bar"..--Iteration.15
1160 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 --.string(3)."bar"..--Iteration.
1180 31 36 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 16--.string(3)."bar"..--Iteratio
11a0 6e 20 31 37 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 n.17--.string(3)."bar"..--Iterat
11c0 69 6f 6e 20 31 38 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 ion.18--.string(3)."bar"..--Iter
11e0 61 74 69 6f 6e 20 31 39 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 22 0a 0a 2d 2d 49 74 ation.19--.string(3)."bar"..--It
1200 65 72 61 74 69 6f 6e 20 32 30 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 2e 67 7a 22 0a 0a 2d 2d eration.20--.string(3).".gz"..--
1220 49 74 65 72 61 74 69 6f 6e 20 32 31 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 2e 67 7a 22 0a 0a Iteration.21--.string(3).".gz"..
1240 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 32 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 2e 67 7a 22 --Iteration.22--.string(3).".gz"
1260 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 33 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 2e 67 ..--Iteration.23--.string(3).".g
1280 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 34 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 z"..--Iteration.24--.string(3)."
12a0 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 35 2d 2d 0a 73 74 72 69 6e 67 28 33 29 .gz"..--Iteration.25--.string(3)
12c0 20 22 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 36 2d 2d 0a 73 74 72 69 6e 67 28 .".gz"..--Iteration.26--.string(
12e0 37 29 20 22 66 6f 6f 00 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 37 2d 2d 0a 73 7)."foo.bar"..--Iteration.27--.s
1300 74 72 69 6e 67 28 37 29 20 22 66 6f 6f 00 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 tring(7)."foo.bar"..--Iteration.
1320 32 38 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 66 6f 6f 00 62 61 72 22 0a 0a 2d 2d 49 74 65 72 28--.string(7)."foo.bar"..--Iter
1340 61 74 69 6f 6e 20 32 39 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 66 6f 6f 00 62 61 72 22 0a 0a ation.29--.string(7)."foo.bar"..
1360 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 30 2d 2d 0a 73 74 72 69 6e 67 28 34 29 20 22 74 65 73 74 --Iteration.30--.string(4)."test
1380 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 31 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 "..--Iteration.31--.string(3)."b
13a0 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 32 2d 2d 0a 73 74 72 69 6e 67 28 36 29 20 ar"..--Iteration.32--.string(6).
13c0 22 62 61 72 2e 67 7a 22 0a 0a 2a 2a 2a 20 54 65 73 74 69 6e 67 20 70 6f 73 73 69 62 6c 65 20 76 "bar.gz"..***.Testing.possible.v
13e0 61 72 69 61 74 69 6f 6e 73 20 69 6e 20 70 61 74 68 20 61 6e 64 20 73 75 66 66 69 78 20 2a 2a 2a ariations.in.path.and.suffix.***
1400 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 72 ..--Iteration.1--.string(3)."bar
1420 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 61 "..--Iteration.2--.string(3)."ba
1440 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 62 r"..--Iteration.3--.string(3)."b
1460 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 34 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 ar"..--Iteration.4--.string(3)."
1480 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 35 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 bar"..--Iteration.5--.string(3).
14a0 22 62 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 36 2d 2d 0a 73 74 72 69 6e 67 28 37 29 "bar"..--Iteration.6--.string(7)
14c0 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 37 2d 2d 0a 73 74 72 69 ."bar.tar"..--Iteration.7--.stri
14e0 6e 67 28 37 29 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 38 2d 2d ng(7)."bar.tar"..--Iteration.8--
1500 0a 73 74 72 69 6e 67 28 37 29 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f .string(7)."bar.tar"..--Iteratio
1520 6e 20 39 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 n.9--.string(7)."bar.tar"..--Ite
1540 72 61 74 69 6f 6e 20 31 30 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 62 61 72 2e 74 61 72 22 0a ration.10--.string(7)."bar.tar".
1560 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 31 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 62 61 72 .--Iteration.11--.string(7)."bar
1580 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 32 2d 2d 0a 73 74 72 69 6e 67 28 37 .tar"..--Iteration.12--.string(7
15a0 29 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 33 2d 2d 0a 73 74 )."bar.tar"..--Iteration.13--.st
15c0 72 69 6e 67 28 37 29 20 22 62 61 72 2e 74 61 72 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 ring(7)."bar.tar"..--Iteration.1
15e0 34 2d 2d 0a 73 74 72 69 6e 67 28 31 29 20 22 74 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 4--.string(1)."t"..--Iteration.1
1600 35 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 74 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 5--.string(7)."tbar.gz"..--Itera
1620 74 69 6f 6e 20 31 36 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 74 62 61 72 2e 67 7a 22 0a 0a 2d tion.16--.string(7)."tbar.gz"..-
1640 2d 49 74 65 72 61 74 69 6f 6e 20 31 37 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 74 62 61 72 2e -Iteration.17--.string(7)."tbar.
1660 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 38 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 gz"..--Iteration.18--.string(7).
1680 22 74 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 31 39 2d 2d 0a 73 74 72 69 "tbar.gz"..--Iteration.19--.stri
16a0 6e 67 28 31 30 29 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e ng(10)."My.Pics.gz"..--Iteration
16c0 20 32 30 2d 2d 0a 73 74 72 69 6e 67 28 31 30 29 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d .20--.string(10)."My.Pics.gz"..-
16e0 2d 49 74 65 72 61 74 69 6f 6e 20 32 31 2d 2d 0a 73 74 72 69 6e 67 28 33 29 20 22 4d 79 20 22 0a -Iteration.21--.string(3)."My.".
1700 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 32 2d 2d 0a 73 74 72 69 6e 67 28 37 29 20 22 4d 79 20 .--Iteration.22--.string(7)."My.
1720 50 69 63 73 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 33 2d 2d 0a 73 74 72 69 6e 67 28 31 Pics"..--Iteration.23--.string(1
1740 30 29 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 34 2d 0)."My.Pics.gz"..--Iteration.24-
1760 2d 0a 73 74 72 69 6e 67 28 31 30 29 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d 2d 49 74 65 -.string(10)."My.Pics.gz"..--Ite
1780 72 61 74 69 6f 6e 20 32 35 2d 2d 0a 73 74 72 69 6e 67 28 31 30 29 20 22 4d 79 20 50 69 63 73 2e ration.25--.string(10)."My.Pics.
17a0 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 36 2d 2d 0a 73 74 72 69 6e 67 28 31 30 29 gz"..--Iteration.26--.string(10)
17c0 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 32 37 2d 2d 0a ."My.Pics.gz"..--Iteration.27--.
17e0 73 74 72 69 6e 67 28 31 30 29 20 22 4d 79 20 50 69 63 73 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 string(10)."My.Pics.gz"..--Itera
1800 74 69 6f 6e 20 32 38 2d 2d 0a 73 74 72 69 6e 67 28 34 29 20 22 31 30 2e 35 22 0a 0a 2d 2d 49 74 tion.28--.string(4)."10.5"..--It
1820 65 72 61 74 69 6f 6e 20 32 39 2d 2d 0a 73 74 72 69 6e 67 28 32 29 20 22 31 30 22 0a 0a 2d 2d 49 eration.29--.string(2)."10"..--I
1840 74 65 72 61 74 69 6f 6e 20 33 30 2d 2d 0a 73 74 72 69 6e 67 28 34 29 20 22 31 30 2e 35 22 0a 0a teration.30--.string(4)."10.5"..
1860 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 31 2d 2d 0a 73 74 72 69 6e 67 28 32 29 20 22 31 30 22 0a --Iteration.31--.string(2)."10".
1880 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 32 2d 2d 0a 73 74 72 69 6e 67 28 32 29 20 22 31 30 22 .--Iteration.32--.string(2)."10"
18a0 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 33 2d 2d 0a 73 74 72 69 6e 67 28 34 29 20 22 31 30 ..--Iteration.33--.string(4)."10
18c0 2e 35 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 34 2d 2d 0a 73 74 72 69 6e 67 28 34 29 20 .5"..--Iteration.34--.string(4).
18e0 22 31 30 2e 35 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 35 2d 2d 0a 73 74 72 69 6e 67 28 "10.5"..--Iteration.35--.string(
1900 35 29 20 22 31 30 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 36 2d 2d 0a 73 74 72 5)."10.gz"..--Iteration.36--.str
1920 69 6e 67 28 31 29 20 22 30 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 37 2d 2d 0a 73 74 72 ing(1)."0"..--Iteration.37--.str
1940 69 6e 67 28 31 29 20 22 30 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 38 2d 2d 0a 73 74 72 ing(1)."0"..--Iteration.38--.str
1960 69 6e 67 28 36 29 20 22 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f 6e 20 33 39 2d ing(6)."bar.gz"..--Iteration.39-
1980 2d 0a 73 74 72 69 6e 67 28 36 29 20 22 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 72 61 74 69 6f -.string(6)."bar.gz"..--Iteratio
19a0 6e 20 34 30 2d 2d 0a 73 74 72 69 6e 67 28 36 29 20 22 62 61 72 2e 67 7a 22 0a 0a 2d 2d 49 74 65 n.40--.string(6)."bar.gz"..--Ite
19c0 72 61 74 69 6f 6e 20 34 31 2d 2d 0a 73 74 72 69 6e 67 28 31 29 20 22 20 22 0a 0a 2d 2d 49 74 65 ration.41--.string(1)."."..--Ite
19e0 72 61 74 69 6f 6e 20 34 32 2d 2d 0a 73 74 72 69 6e 67 28 31 29 20 22 20 22 0a 0a 2d 2d 49 74 65 ration.42--.string(1)."."..--Ite
1a00 72 61 74 69 6f 6e 20 34 33 2d 2d 0a 73 74 72 69 6e 67 28 30 29 20 22 22 0a 0a 2d 2d 49 74 65 72 ration.43--.string(0).""..--Iter
1a20 61 74 69 6f 6e 20 34 34 2d 2d 0a 73 74 72 69 6e 67 28 31 29 20 22 20 22 0a 0a 2d 2d 49 74 65 72 ation.44--.string(1)."."..--Iter
1a40 61 74 69 6f 6e 20 34 35 2d 2d 0a 73 74 72 69 6e 67 28 31 29 20 22 20 22 0a 0a 2d 2d 49 74 65 72 ation.45--.string(1)."."..--Iter
1a60 61 74 69 6f 6e 20 34 36 2d 2d 0a 73 74 72 69 6e 67 28 30 29 20 22 22 0a 0a 2d 2d 49 74 65 72 61 ation.46--.string(0).""..--Itera
1a80 74 69 6f 6e 20 34 37 2d 2d 0a 73 74 72 69 6e 67 28 30 29 20 22 22 0a 0a 2d 2d 49 74 65 72 61 74 tion.47--.string(0).""..--Iterat
1aa0 69 6f 6e 20 34 38 2d 2d 0a 73 74 72 69 6e 67 28 30 29 20 22 22 0a 44 6f 6e 65 0a ion.48--.string(0)."".Done.