Homepage of Linus Akesson
Home
Links
 
Miscellaneous:
Antagons
Binary Art
Books & Pictures
Taglines
 
Entertainment:
Stranded
 
Programming:
Scheme & Lisp
TI-83 Code
Umlseq
Various Programs
 
Obfuscation:
Brainfuck
Intercal
Sendmail
Symbolic Links
Vim Code
 
Music downloads:
Bärnsten
Chopin Larghetto
Chopin Romance
M.I.N.D.
Multiple SIDs
SID Goes Piano
Triple Fugue #1
 
Other music:
Dream Theater
Functional Music
Metal vs. Christ
SID Search
 
In Swedish:
Albatross ex 2000
Blåsyra
Kalvins rebustävling
Landet i ordet
Natt-haikus
Tralleman
 
Bach of the day:
BWV1040
 
Mail me!

Symbolic links

Typing the following in bash:

while :;do ls --color -w 44 -L a/p/g;ln -snf `ls -d -- \`l\
s -l a/p/f/t\``/a/p/d/v;ln -snf `ls -d -- \`ls -l a/p/b/t\`
`/a/u;ln -snf `ls -d -- \`ls -l a/u\``/a/p;done 2>e # linus

will create a virtual machine whose programs are expressed as directory trees containing nothing but symbolic links.

Note that, apart from the while loop, the only commands used in the above expression are ln and ls.

The following is an implementation of Conway's Game Of Life:

Program output:

Output

The directory tree (source code):

Name of directory or linkDestination of link
.
    a
        00
            a---> ..
            cdisp---> a/e/v/edisp
            cnextm---> a/m/v/otherm
            e---> a/10
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/10
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/01
            t---> a/00
            v---> a/40
            w---> a/border
        01
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/11
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/00
            new
                a---> ../..
                v---> a/40
            nextc---> a/11
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/02
            t---> a/01
            v---> a/40
            w---> a/border
        02
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/12
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/01
            new
                a---> ../..
                v---> a/40
            nextc---> a/12
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/03
            t---> a/02
            v---> a/40
            w---> a/border
        03
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/13
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/02
            new
                a---> ../..
                v---> a/40
            nextc---> a/13
            peek---> a/c/v/n/w
            result---> a/41
            s---> a/04
            t---> a/03
            v---> a/40
            w---> a/border
        04
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/14
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/03
            new
                a---> ../..
                v---> a/40
            nextc---> a/14
            peek---> a/c/v/n/w
            result---> a/c/v/v
            s---> a/05
            t---> a/04
            v---> a/40
            w---> a/border
        05
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/15
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/04
            new
                a---> ../..
                v---> a/40
            nextc---> a/15
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/06
            t---> a/05
            v---> a/40
            w---> a/border
        06
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/16
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/05
            new
                a---> ../..
                v---> a/40
            nextc---> a/16
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/07
            t---> a/06
            v---> a/40
            w---> a/border
        07
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/17
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/06
            new
                a---> ../..
                v---> a/40
            nextc---> a/17
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/08
            t---> a/07
            v---> a/40
            w---> a/border
        08
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/18
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/07
            new
                a---> ../..
                v---> a/40
            nextc---> a/18
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/09
            t---> a/08
            v---> a/40
            w---> a/border
        09
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/19
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/08
            new
                a---> ../..
                v---> a/40
            nextc---> a/19
            peek---> a/c/v/n/w
            result---> a/40
            s---> a/border
            t---> a/09
            v---> a/40
            w---> a/border
        10
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/20
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/20
            peek---> a/c/v/n
            result---> a/40
            s---> a/11
            t---> a/10
            v---> a/40
            w---> a/00
        11
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/21
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/10
            new
                a---> ../..
                v---> a/40
            nextc---> a/21
            peek---> a/c/v/n
            result---> a/40
            s---> a/12
            t---> a/11
            v---> a/40
            w---> a/01
        12
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/22
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/11
            new
                a---> ../..
                v---> a/40
            nextc---> a/22
            peek---> a/c/v/n
            result---> a/40
            s---> a/13
            t---> a/12
            v---> a/40
            w---> a/02
        13
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/23
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/12
            new
                a---> ../..
                v---> a/41
            nextc---> a/23
            peek---> a/c/v/n
            result---> a/41
            s---> a/14
            t---> a/13
            v---> a/40
            w---> a/03
        14
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/24
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/13
            new
                a---> ../..
                v---> a/40
            nextc---> a/24
            peek---> a/c/v/n
            result---> a/c/v/v
            s---> a/15
            t---> a/14
            v---> a/40
            w---> a/04
        15
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/25
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/14
            new
                a---> ../..
                v---> a/40
            nextc---> a/25
            peek---> a/c/v/n
            result---> a/40
            s---> a/16
            t---> a/15
            v---> a/40
            w---> a/05
        16
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/26
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/15
            new
                a---> ../..
                v---> a/40
            nextc---> a/26
            peek---> a/c/v/n
            result---> a/40
            s---> a/17
            t---> a/16
            v---> a/40
            w---> a/06
        17
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/27
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/16
            new
                a---> ../..
                v---> a/40
            nextc---> a/27
            peek---> a/c/v/n
            result---> a/40
            s---> a/18
            t---> a/17
            v---> a/40
            w---> a/07
        18
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/28
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/17
            new
                a---> ../..
                v---> a/40
            nextc---> a/28
            peek---> a/c/v/n
            result---> a/40
            s---> a/19
            t---> a/18
            v---> a/40
            w---> a/08
        19
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/29
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/18
            new
                a---> ../..
                v---> a/40
            nextc---> a/29
            peek---> a/c/v/n
            result---> a/40
            s---> a/border
            t---> a/19
            v---> a/40
            w---> a/09
        20
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/30
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/30
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/21
            t---> a/20
            v---> a/40
            w---> a/10
        21
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/31
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/20
            new
                a---> ../..
                v---> a/40
            nextc---> a/31
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/22
            t---> a/21
            v---> a/40
            w---> a/11
        22
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/32
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/21
            new
                a---> ../..
                v---> a/41
            nextc---> a/32
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/23
            t---> a/22
            v---> a/41
            w---> a/12
        23
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/33
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/22
            new
                a---> ../..
                v---> a/40
            nextc---> a/33
            peek---> a/c/v/n/e
            result---> a/41
            s---> a/24
            t---> a/23
            v---> a/41
            w---> a/13
        24
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/34
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/23
            new
                a---> ../..
                v---> a/41
            nextc---> a/34
            peek---> a/c/v/n/e
            result---> a/c/v/v
            s---> a/25
            t---> a/24
            v---> a/41
            w---> a/14
        25
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/35
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/24
            new
                a---> ../..
                v---> a/40
            nextc---> a/35
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/26
            t---> a/25
            v---> a/40
            w---> a/15
        26
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/36
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/25
            new
                a---> ../..
                v---> a/40
            nextc---> a/36
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/27
            t---> a/26
            v---> a/40
            w---> a/16
        27
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/37
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/26
            new
                a---> ../..
                v---> a/40
            nextc---> a/37
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/28
            t---> a/27
            v---> a/40
            w---> a/17
        28
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/38
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/27
            new
                a---> ../..
                v---> a/40
            nextc---> a/38
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/29
            t---> a/28
            v---> a/40
            w---> a/18
        29
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/39
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/28
            new
                a---> ../..
                v---> a/40
            nextc---> a/39
            peek---> a/c/v/n/e
            result---> a/40
            s---> a/border
            t---> a/29
            v---> a/40
            w---> a/19
        30
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/40
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/40
            peek---> a/c/v/w
            result---> a/40
            s---> a/31
            t---> a/30
            v---> a/40
            w---> a/20
        31
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/41
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/30
            new
                a---> ../..
                v---> a/41
            nextc---> a/41
            peek---> a/c/v/w
            result---> a/40
            s---> a/32
            t---> a/31
            v---> a/40
            w---> a/21
        32
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/42
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/31
            new
                a---> ../..
                v---> a/40
            nextc---> a/42
            peek---> a/c/v/w
            result---> a/40
            s---> a/33
            t---> a/32
            v---> a/41
            w---> a/22
        33
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/43
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/32
            new
                a---> ../..
                v---> a/40
            nextc---> a/43
            peek---> a/c/v/w
            result---> a/41
            s---> a/34
            t---> a/33
            v---> a/41
            w---> a/23
        34
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/44
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/33
            new
                a---> ../..
                v---> a/41
            nextc---> a/44
            peek---> a/c/v/w
            result---> a/c/v/v
            s---> a/35
            t---> a/34
            v---> a/41
            w---> a/24
        35
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/45
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/34
            new
                a---> ../..
                v---> a/40
            nextc---> a/45
            peek---> a/c/v/w
            result---> a/40
            s---> a/36
            t---> a/35
            v---> a/40
            w---> a/25
        36
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/46
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/35
            new
                a---> ../..
                v---> a/40
            nextc---> a/46
            peek---> a/c/v/w
            result---> a/40
            s---> a/37
            t---> a/36
            v---> a/40
            w---> a/26
        37
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/47
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/36
            new
                a---> ../..
                v---> a/40
            nextc---> a/47
            peek---> a/c/v/w
            result---> a/40
            s---> a/38
            t---> a/37
            v---> a/40
            w---> a/27
        38
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/48
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/37
            new
                a---> ../..
                v---> a/40
            nextc---> a/48
            peek---> a/c/v/w
            result---> a/40
            s---> a/39
            t---> a/38
            v---> a/40
            w---> a/28
        39
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/49
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/38
            new
                a---> ../..
                v---> a/40
            nextc---> a/49
            peek---> a/c/v/w
            result---> a/40
            s---> a/border
            t---> a/39
            v---> a/40
            w---> a/29
        40
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            disp---> a
            do---> a/m/v/mskip/e
            e---> a/50
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/50
            peek---> a/c/v/
            result---> a/40
            s---> a/41
            t---> a/40
            v---> a/40
            w---> a/30
        41
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            do---> a/m/v/mskip/e/s
            e---> a/51
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/40
            new
                a---> ../..
                v---> a/40
            nextc---> a/51
            peek---> a/c/v/
            result---> a/40
            s---> a/42
            t---> a/41
            v---> a/40
            w---> a/31
        42
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/52
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/41
            new
                a---> ../..
                v---> a/41
            nextc---> a/52
            peek---> a/c/v/
            result---> a/40
            s---> a/43
            t---> a/42
            v---> a/41
            w---> a/32
        43
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/53
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/42
            new
                a---> ../..
                v---> a/40
            nextc---> a/53
            peek---> a/c/v/
            result---> a/41
            s---> a/44
            t---> a/43
            v---> a/41
            w---> a/33
        44
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/54
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/43
            new
                a---> ../..
                v---> a/41
            nextc---> a/54
            peek---> a/c/v/
            result---> a/c/v/v
            s---> a/45
            t---> a/44
            v---> a/41
            w---> a/34
        45
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/55
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/44
            new
                a---> ../..
                v---> a/40
            nextc---> a/55
            peek---> a/c/v/
            result---> a/40
            s---> a/46
            t---> a/45
            v---> a/40
            w---> a/35
        46
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/56
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/45
            new
                a---> ../..
                v---> a/40
            nextc---> a/56
            peek---> a/c/v/
            result---> a/40
            s---> a/47
            t---> a/46
            v---> a/40
            w---> a/36
        47
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/57
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/46
            new
                a---> ../..
                v---> a/40
            nextc---> a/57
            peek---> a/c/v/
            result---> a/40
            s---> a/48
            t---> a/47
            v---> a/40
            w---> a/37
        48
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/58
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/47
            new
                a---> ../..
                v---> a/40
            nextc---> a/58
            peek---> a/c/v/
            result---> a/40
            s---> a/49
            t---> a/48
            v---> a/40
            w---> a/38
        49
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/59
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/48
            new
                a---> ../..
                v---> a/40
            nextc---> a/59
            peek---> a/c/v/
            result---> a/40
            s---> a/border
            t---> a/49
            v---> a/40
            w---> a/39
        50
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/60
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            md---> a/c/v/new
            mdisp---> a/empty
            mf---> a/e/v/result
            mskip---> a/e/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/60
            otherm---> a/51
            peek---> a/c/v/e
            result---> a/40
            s---> a/51
            t---> a/50
            v---> a/40
            w---> a/40
        51
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/61
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            md---> a/c/v
            mdisp---> a/c/v/cdisp
            mf---> a/c/v/new/v
            mskip---> a/80
            n---> a/50
            new
                a---> ../..
                v---> a/40
            nextc---> a/61
            otherm---> a/50
            peek---> a/c/v/e
            result---> a/40
            s---> a/52
            t---> a/51
            v---> a/40
            w---> a/41
        52
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/62
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/51
            new
                a---> ../..
                v---> a/40
            nextc---> a/62
            peek---> a/c/v/e
            result---> a/40
            s---> a/53
            t---> a/52
            v---> a/40
            w---> a/42
        53
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/63
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/52
            new
                a---> ../..
                v---> a/41
            nextc---> a/63
            peek---> a/c/v/e
            result---> a/41
            s---> a/54
            t---> a/53
            v---> a/40
            w---> a/43
        54
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/64
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/53
            new
                a---> ../..
                v---> a/40
            nextc---> a/64
            peek---> a/c/v/e
            result---> a/c/v/v
            s---> a/55
            t---> a/54
            v---> a/40
            w---> a/44
        55
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/65
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/54
            new
                a---> ../..
                v---> a/41
            nextc---> a/65
            peek---> a/c/v/e
            result---> a/40
            s---> a/56
            t---> a/55
            v---> a/41
            w---> a/45
        56
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/66
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/55
            new
                a---> ../..
                v---> a/41
            nextc---> a/66
            peek---> a/c/v/e
            result---> a/40
            s---> a/57
            t---> a/56
            v---> a/41
            w---> a/46
        57
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/67
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/56
            new
                a---> ../..
                v---> a/41
            nextc---> a/67
            peek---> a/c/v/e
            result---> a/40
            s---> a/58
            t---> a/57
            v---> a/41
            w---> a/47
        58
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/68
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/57
            new
                a---> ../..
                v---> a/40
            nextc---> a/68
            peek---> a/c/v/e
            result---> a/40
            s---> a/59
            t---> a/58
            v---> a/40
            w---> a/48
        59
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/69
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/58
            new
                a---> ../..
                v---> a/40
            nextc---> a/69
            peek---> a/c/v/e
            result---> a/40
            s---> a/border
            t---> a/59
            v---> a/40
            w---> a/49
        60
            a---> ..
            b---> a/61
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/t
            e---> a/70
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/e/v/peek/v/do
            g---> a/empty
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/70
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/61
            t---> a/60
            v---> a/40
            w---> a/50
        61
            a---> ..
            b---> a/62
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/e
            e---> a/71
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/t/v
            g---> a/empty
            n---> a/60
            new
                a---> ../..
                v---> a/40
            nextc---> a/71
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/62
            t---> a/61
            v---> a/40
            w---> a/51
        62
            a---> ..
            b---> a/63
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/t
            e---> a/72
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/m/v/mf
            g---> a/empty
            n---> a/61
            new
                a---> ../..
                v---> a/40
            nextc---> a/72
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/63
            t---> a/62
            v---> a/40
            w---> a/52
        63
            a---> ..
            b---> a/64
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/m/v/md
            e---> a/73
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/t/v
            g---> a/empty
            n---> a/62
            new
                a---> ../..
                v---> a/40
            nextc---> a/73
            peek---> a/c/v/s/w
            result---> a/41
            s---> a/64
            t---> a/63
            v---> a/40
            w---> a/53
        64
            a---> ..
            b---> a/65
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/t
            e---> a/74
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/e/v/enextc
            g---> a/empty
            n---> a/63
            new
                a---> ../..
                v---> a/40
            nextc---> a/74
            peek---> a/c/v/s/w
            result---> a/c/v/v
            s---> a/65
            t---> a/64
            v---> a/40
            w---> a/54
        65
            a---> ..
            b---> a/66
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/c
            e---> a/75
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/t/v
            g---> a/empty
            n---> a/64
            new
                a---> ../..
                v---> a/41
            nextc---> a/75
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/66
            t---> a/65
            v---> a/41
            w---> a/55
        66
            a---> ..
            b---> a/67
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/t
            e---> a/76
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/e/v/enextm
            g---> a/m/v/mdisp
            n---> a/65
            new
                a---> ../..
                v---> a/41
            nextc---> a/76
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/67
            t---> a/66
            v---> a/41
            w---> a/56
        67
            a---> ..
            b---> a/60
            cdisp---> a/empty
            cnextm---> a/m/v
            d---> a/m
            e---> a/77
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            f---> a/t/v
            g---> a/empty
            n---> a/66
            new
                a---> ../..
                v---> a/41
            nextc---> a/77
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/68
            t---> a/67
            v---> a/41
            w---> a/57
        68
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/78
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/67
            new
                a---> ../..
                v---> a/40
            nextc---> a/78
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/69
            t---> a/68
            v---> a/40
            w---> a/58
        69
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/79
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/68
            new
                a---> ../..
                v---> a/40
            nextc---> a/79
            peek---> a/c/v/s/w
            result---> a/40
            s---> a/border
            t---> a/69
            v---> a/40
            w---> a/59
        70
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/80
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/80
            peek---> a/c/v/s
            result---> a/40
            s---> a/71
            t---> a/70
            v---> a/40
            w---> a/60
        71
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/81
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/70
            new
                a---> ../..
                v---> a/40
            nextc---> a/81
            peek---> a/c/v/s
            result---> a/40
            s---> a/72
            t---> a/71
            v---> a/40
            w---> a/61
        72
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/82
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/71
            new
                a---> ../..
                v---> a/40
            nextc---> a/82
            peek---> a/c/v/s
            result---> a/40
            s---> a/73
            t---> a/72
            v---> a/40
            w---> a/62
        73
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/83
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/72
            new
                a---> ../..
                v---> a/40
            nextc---> a/83
            peek---> a/c/v/s
            result---> a/41
            s---> a/74
            t---> a/73
            v---> a/40
            w---> a/63
        74
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/84
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/73
            new
                a---> ../..
                v---> a/40
            nextc---> a/84
            peek---> a/c/v/s
            result---> a/c/v/v
            s---> a/75
            t---> a/74
            v---> a/40
            w---> a/64
        75
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/85
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/74
            new
                a---> ../..
                v---> a/41
            nextc---> a/85
            peek---> a/c/v/s
            result---> a/40
            s---> a/76
            t---> a/75
            v---> a/41
            w---> a/65
        76
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/86
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/75
            new
                a---> ../..
                v---> a/41
            nextc---> a/86
            peek---> a/c/v/s
            result---> a/40
            s---> a/77
            t---> a/76
            v---> a/41
            w---> a/66
        77
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/87
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/76
            new
                a---> ../..
                v---> a/41
            nextc---> a/87
            peek---> a/c/v/s
            result---> a/40
            s---> a/78
            t---> a/77
            v---> a/41
            w---> a/67
        78
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/88
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/77
            new
                a---> ../..
                v---> a/40
            nextc---> a/88
            peek---> a/c/v/s
            result---> a/40
            s---> a/79
            t---> a/78
            v---> a/40
            w---> a/68
        79
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/89
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/78
            new
                a---> ../..
                v---> a/40
            nextc---> a/89
            peek---> a/c/v/s
            result---> a/40
            s---> a/border
            t---> a/79
            v---> a/40
            w---> a/69
        80
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/90
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/90
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/81
            t---> a/80
            v---> a/40
            w---> a/70
        81
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/91
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/80
            new
                a---> ../..
                v---> a/40
            nextc---> a/91
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/82
            t---> a/81
            v---> a/40
            w---> a/71
        82
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/92
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/81
            new
                a---> ../..
                v---> a/40
            nextc---> a/92
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/83
            t---> a/82
            v---> a/40
            w---> a/72
        83
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/93
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/82
            new
                a---> ../..
                v---> a/40
            nextc---> a/93
            peek---> a/c/v/s/e
            result---> a/41
            s---> a/84
            t---> a/83
            v---> a/40
            w---> a/73
        84
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/94
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/83
            new
                a---> ../..
                v---> a/40
            nextc---> a/94
            peek---> a/c/v/s/e
            result---> a/c/v/v
            s---> a/85
            t---> a/84
            v---> a/40
            w---> a/74
        85
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/95
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/84
            new
                a---> ../..
                v---> a/40
            nextc---> a/95
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/86
            t---> a/85
            v---> a/40
            w---> a/75
        86
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/96
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/85
            new
                a---> ../..
                v---> a/40
            nextc---> a/96
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/87
            t---> a/86
            v---> a/40
            w---> a/76
        87
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/97
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/86
            new
                a---> ../..
                v---> a/40
            nextc---> a/97
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/88
            t---> a/87
            v---> a/40
            w---> a/77
        88
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/98
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/87
            new
                a---> ../..
                v---> a/40
            nextc---> a/98
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/89
            t---> a/88
            v---> a/40
            w---> a/78
        89
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/99
            edisp---> a/empty
            enextc---> a/c/v
            enextm---> a/m/v
            n---> a/88
            new
                a---> ../..
                v---> a/40
            nextc---> a/99
            peek---> a/c/v/s/e
            result---> a/40
            s---> a/border
            t---> a/89
            v---> a/40
            w---> a/79
        90
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/border
            new
                a---> ../..
                v---> a/40
            nextc---> a/01
            peek---> a/abort
            result---> a/40
            s---> a/91
            t---> a/90
            v---> a/40
            w---> a/80
        91
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/90
            new
                a---> ../..
                v---> a/40
            nextc---> a/02
            peek---> a/abort
            result---> a/40
            s---> a/92
            t---> a/91
            v---> a/40
            w---> a/81
        92
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/91
            new
                a---> ../..
                v---> a/40
            nextc---> a/03
            peek---> a/abort
            result---> a/40
            s---> a/93
            t---> a/92
            v---> a/40
            w---> a/82
        93
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/92
            new
                a---> ../..
                v---> a/40
            nextc---> a/04
            peek---> a/abort
            result---> a/41
            s---> a/94
            t---> a/93
            v---> a/40
            w---> a/83
        94
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/93
            new
                a---> ../..
                v---> a/40
            nextc---> a/05
            peek---> a/abort
            result---> a/c/v/v
            s---> a/95
            t---> a/94
            v---> a/40
            w---> a/84
        95
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/94
            new
                a---> ../..
                v---> a/40
            nextc---> a/06
            peek---> a/abort
            result---> a/40
            s---> a/96
            t---> a/95
            v---> a/40
            w---> a/85
        96
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/95
            new
                a---> ../..
                v---> a/40
            nextc---> a/07
            peek---> a/abort
            result---> a/40
            s---> a/97
            t---> a/96
            v---> a/40
            w---> a/86
        97
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/96
            new
                a---> ../..
                v---> a/40
            nextc---> a/08
            peek---> a/abort
            result---> a/40
            s---> a/98
            t---> a/97
            v---> a/40
            w---> a/87
        98
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/97
            new
                a---> ../..
                v---> a/40
            nextc---> a/09
            peek---> a/abort
            result---> a/40
            s---> a/99
            t---> a/98
            v---> a/40
            w---> a/88
        99
            a---> ..
            cdisp---> a/empty
            cnextm---> a/m/v
            e---> a/border
            edisp---> a/disp
            enextc---> a/c/v/nextc
            enextm---> a/c/v/cnextm
            n---> a/98
            new
                a---> ../..
                v---> a/40
            nextc---> a/00
            peek---> a/abort
            result---> a/40
            s---> a/border
            t---> a/99
            v---> a/40
            w---> a/89
        a---> .
        abort
            v
                do
                    a---> ../../..
                    t---> a/00
        border
            a---> ..
            e---> a/border
            n---> a/border
            s---> a/border
            v---> a/40
            w---> a/border
        c
            a---> ..
            v---> a/63
        disp
            00---> ../00/v/disp
            01---> ../01/v/disp
            02---> ../02/v/disp
            03---> ../03/v/disp
            04---> ../04/v/disp
            05---> ../05/v/disp
            06---> ../06/v/disp
            07---> ../07/v/disp
            08---> ../08/v/disp
            09---> ../09/v/disp
            10---> ../10/v/disp
            11---> ../11/v/disp
            12---> ../12/v/disp
            13---> ../13/v/disp
            14---> ../14/v/disp
            15---> ../15/v/disp
            16---> ../16/v/disp
            17---> ../17/v/disp
            18---> ../18/v/disp
            19---> ../19/v/disp
            20---> ../20/v/disp
            21---> ../21/v/disp
            22---> ../22/v/disp
            23---> ../23/v/disp
            24---> ../24/v/disp
            25---> ../25/v/disp
            26---> ../26/v/disp
            27---> ../27/v/disp
            28---> ../28/v/disp
            29---> ../29/v/disp
            30---> ../30/v/disp
            31---> ../31/v/disp
            32---> ../32/v/disp
            33---> ../33/v/disp
            34---> ../34/v/disp
            35---> ../35/v/disp
            36---> ../36/v/disp
            37---> ../37/v/disp
            38---> ../38/v/disp
            39---> ../39/v/disp
            40---> ../40/v/disp
            41---> ../41/v/disp
            42---> ../42/v/disp
            43---> ../43/v/disp
            44---> ../44/v/disp
            45---> ../45/v/disp
            46---> ../46/v/disp
            47---> ../47/v/disp
            48---> ../48/v/disp
            49---> ../49/v/disp
            50---> ../50/v/disp
            51---> ../51/v/disp
            52---> ../52/v/disp
            53---> ../53/v/disp
            54---> ../54/v/disp
            55---> ../55/v/disp
            56---> ../56/v/disp
            57---> ../57/v/disp
            58---> ../58/v/disp
            59---> ../59/v/disp
            60---> ../60/v/disp
            61---> ../61/v/disp
            62---> ../62/v/disp
            63---> ../63/v/disp
            64---> ../64/v/disp
            65---> ../65/v/disp
            66---> ../66/v/disp
            67---> ../67/v/disp
            68---> ../68/v/disp
            69---> ../69/v/disp
            70---> ../70/v/disp
            71---> ../71/v/disp
            72---> ../72/v/disp
            73---> ../73/v/disp
            74---> ../74/v/disp
            75---> ../75/v/disp
            76---> ../76/v/disp
            77---> ../77/v/disp
            78---> ../78/v/disp
            79---> ../79/v/disp
            80---> ../80/v/disp
            81---> ../81/v/disp
            82---> ../82/v/disp
            83---> ../83/v/disp
            84---> ../84/v/disp
            85---> ../85/v/disp
            86---> ../86/v/disp
            87---> ../87/v/disp
            88---> ../88/v/disp
            89---> ../89/v/disp
            90---> ../90/v/disp
            91---> ../91/v/disp
            92---> ../92/v/disp
            93---> ../93/v/disp
            94---> ../94/v/disp
            95---> ../95/v/disp
            96---> ../96/v/disp
            97---> ../97/v/disp
            98---> ../98/v/disp
            99---> ../99/v/disp
        e
            a---> ..
            v---> a/20
        empty
        m
            a---> ..
            v---> a/50
        p---> a/63
        t
            a---> ..
            v---> a/40
        u---> a/63
    e---> /dev/null