DataMuseum.dk

Presents historical artifacts from the history of:

Bogika Butler

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Bogika Butler

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦28f341390⟧

    Length: 33280 (0x8200)
    Names: »EFL1.E«

Derivation

└─⟦e1c0a41a6⟧ Bits:30009789/_.ft.Ibm2.50007344.imd Mogens Pelles Zilog 80,000 / EOS projekt
    └─⟦this⟧ »EFL1.E« 

Default Hex Dump

0x0000…0020 2c 81 6d 61 78 3a 81 69 6e 74 65 67 65 72 3b 00 00 06 82 62 65 67 69 6e 00 1c 84 6d 61 78 81 3a   ┆, max: integer;    begin   max :┆
0x0020…0040 3d 81 65 6c 65 6d 65 6e 74 73 81 28 81 73 6f 75 72 63 65 81 29 3b 00 3a 84 69 66 81 6d 61 78 81   ┆= elements ( source ); : if max ┆
0x0040…0060 3e 81 65 6c 65 6d 65 6e 74 73 81 28 81 64 65 73 74 81 29 81 74 68 65 6e 81 6d 61 78 81 3a 3d 81   ┆> elements ( dest ) then max := ┆
0x0060…0080 65 6c 65 6d 65 6e 74 73 81 28 81 64 65 73 74 81 29 3b 00 2b 84 66 6f 72 81 69 81 3a 3d 81 31 81   ┆elements ( dest ); + for i := 1 ┆
0x0080…00a0 74 6f 81 6d 61 78 81 64 6f 81 64 65 73 74 5b 69 5d 81 3a 3d 81 73 6f 75 72 63 65 5b 69 5d 3b 00   ┆to max do destÆiÅ := sourceÆiÅ; ┆
0x00a0…00c0 00 05 82 65 6e 64 3b 00 00 01 20 00 00 3a 70 72 6f 63 65 64 75 72 65 20 46 69 6c 6c 42 79 74 65   ┆   end;      :procedure FillByte┆
0x00c0…00e0 73 20 28 20 75 6e 69 76 20 62 3a 20 42 79 74 65 3b 20 75 6e 69 76 20 64 65 73 74 3a 20 62 6c 6f   ┆s ( univ b: Byte; univ dest: blo┆
0x00e0…0100 63 6b 50 74 72 20 29 3b 00 10 82 76 61 72 81 69 3a 81 69 6e 74 65 67 65 72 3b 00 06 82 62 65 67   ┆ckPtr );   var i: integer;   beg┆
0x0100…0120 69 6e 00 31 84 66 6f 72 81 69 81 3a 3d 81 31 81 74 6f 81 65 6c 65 6d 65 6e 74 73 81 28 81 64 65   ┆in 1 for i := 1 to elements ( de┆
0x0120…0140 73 74 81 29 81 64 6f 81 64 65 73 74 5b 69 5d 81 3a 3d 81 62 3b 00 00 05 82 65 6e 64 3b 00 00 01   ┆st ) do destÆiÅ := b;    end;   ┆
0x0140…0160 20 00 00 28 66 75 6e 63 74 69 6f 6e 20 4c 65 67 61 6c 43 68 61 72 20 28 20 63 3a 20 63 68 61 72   ┆   (function LegalChar ( c: char┆
0x0160…0180 20 29 3a 20 62 6f 6f 6c 65 61 6e 3b 00 06 82 62 65 67 69 6e 00 2c 84 6c 65 67 61 6c 43 68 61 72   ┆ ): boolean;   begin , legalChar┆
0x0180…01a0 81 3a 3d 81 28 63 81 3e 81 27 81 27 29 81 61 6e 64 81 6e 6f 74 81 28 63 81 3d 81 73 6c 61 73 68   ┆ := (c > ' ') and not (c = slash┆
0x01a0…01c0 29 3b 00 05 82 65 6e 64 3b 00 00 01 20 00 00 2b 66 75 6e 63 74 69 6f 6e 20 4e 61 6d 65 4f 6b 20   ┆);   end;      +function NameOk ┆
0x01c0…01e0 28 20 6e 61 6d 65 3a 20 73 68 6f 72 74 69 64 20 29 3a 20 62 6f 6f 6c 65 61 6e 3b 00 00 04 82 76   ┆( name: shortid ): boolean;    v┆
0x01e0…0200 61 72 00 0c 84 69 3a 81 69 6e 74 65 67 65 72 3b 00 0d 84 6f 6b 3a 81 62 6f 6f 6c 65 61 6e 3b 00   ┆ar   i: integer;   ok: boolean; ┆
0x0200…0220 00 06 82 62 65 67 69 6e 00 0c 84 6f 6b 81 3a 3d 81 74 72 75 65 3b 00 2c 84 66 6f 72 81 69 81 3a   ┆   begin   ok := true; , for i :┆
0x0220…0240 3d 81 31 81 74 6f 81 4c 61 73 74 4e 6f 6e 42 6c 61 6e 6b 28 81 6e 61 6d 65 81 29 81 64 6f 81 62   ┆= 1 to LastNonBlank( name ) do b┆
0x0240…0260 65 67 69 6e 00 23 86 6f 6b 81 3a 3d 81 6f 6b 81 61 6e 64 81 4c 65 67 61 6c 43 68 61 72 28 81 6e   ┆egin # ok := ok and LegalChar( n┆
0x0260…0280 61 6d 65 5b 69 5d 81 29 3b 00 00 14 86 77 69 74 68 81 63 81 3d 81 6e 61 6d 65 5b 69 5d 81 64 6f   ┆ameÆiÅ );    with c = nameÆiÅ do┆
0x0280…02a0 00 1e 88 69 66 81 28 27 41 27 3c 3d 63 29 81 61 6e 64 81 28 63 3c 3d 27 5a 27 29 81 74 68 65 6e   ┆   if ('A'<=c) and (c<='Z') then┆
0x02a0…02c0 00 24 8a 63 81 3a 3d 81 63 68 72 28 6f 72 64 28 27 61 27 29 2d 6f 72 64 28 27 41 27 29 2b 6f 72   ┆ $ c := chr(ord('a')-ord('A')+or┆
0x02c0…02e0 64 28 63 29 29 3b 00 05 84 65 6e 64 3b 00 00 0e 84 4e 61 6d 65 4f 4b 81 3a 3d 81 6f 6b 3b 00 10   ┆d(c));   end;    NameOK := ok;  ┆
0x02e0…0300 82 65 6e 64 3b 81 7b 81 4e 61 6d 65 4f 6b 81 7d 00 01 20 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆ end; æ NameOk å                ┆
0x0300…0320 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5   ┆                                ┆
            […0xf…]
0x0500…0520 00 26 50 52 4f 43 45 44 55 52 45 82 63 6f 6e 63 61 74 4e 61 6d 65 73 82 28 81 6e 61 6d 65 31 3a   ┆ &PROCEDURE concatNames ( name1:┆
0x0520…0540 81 66 75 6c 6c 69 64 3b 00 0f 9a 6e 61 6d 65 32 3a 81 66 75 6c 6c 69 64 3b 00 00 12 9a 6f 75 74   ┆ fullid;   name2: fullid;    out┆
0x0540…0560 6e 61 6d 65 3a 81 66 75 6c 6c 69 64 29 3b 00 01 20 00 00 3b 84 28 2a 81 72 65 74 75 72 6e 73 2c   ┆name: fullid);     ; (* returns,┆
0x0560…0580 81 22 6e 61 6d 65 31 22 81 63 6f 6e 63 61 74 65 6e 61 6e 74 65 64 81 77 69 74 68 81 22 6e 61 6d   ┆ "name1" concatenanted with "nam┆
0x0580…05a0 65 32 22 2e 81 41 81 73 6c 61 73 68 81 69 73 00 00 38 87 69 6e 73 65 72 74 65 64 81 62 65 74 77   ┆e2". A slash is  8 inserted betw┆
0x05a0…05c0 65 65 6e 81 74 68 65 81 6e 61 6d 65 73 81 69 66 81 72 65 71 75 69 72 65 64 2c 81 69 2e 65 2e 81   ┆een the names if required, i.e. ┆
0x05c0…05e0 69 66 81 22 6e 61 6d 65 31 22 00 39 87 64 6f 65 73 6e 27 74 81 65 6e 64 81 77 69 74 68 81 61 81   ┆if "name1" 9 doesn't end with a ┆
0x05e0…0600 73 6c 61 73 68 2c 81 61 6e 64 81 22 6e 61 6d 65 32 22 81 64 6f 65 73 6e 27 74 81 6c 6f 67 69 6e   ┆slash, and "name2" doesn't login┆
0x0600…0620 81 77 69 74 68 00 00 32 87 61 81 73 6c 61 73 68 2e 81 54 68 65 81 73 79 6e 74 61 78 81 6f 66 81   ┆ with  2 a slash. The syntax of ┆
0x0620…0640 74 68 65 81 6e 61 6d 65 73 81 69 73 81 6e 6f 74 81 76 65 72 69 66 69 65 64 2e 00 01 20 00 00 11   ┆the names is not verified.      ┆
0x0640…0660 87 41 62 6e 6f 72 6d 61 6c 81 72 65 73 75 6c 74 3a 00 00 01 20 00 00 3c 89 4e 61 6d 65 54 6f 6f   ┆ Abnormal result:      < NameToo┆
0x0660…0680 4c 6f 6e 67 3a 81 22 6e 61 6d 65 31 22 81 61 6e 64 81 22 6e 61 6d 65 32 22 81 63 61 6e 6e 6f 74   ┆Long: "name1" and "name2" cannot┆
0x0680…06a0 81 66 69 74 81 69 6e 74 6f 81 22 6f 75 74 6e 61 6d 65 22 2e 00 01 20 00 00 03 84 2a 29 00 00 01   ┆ fit into "outname".       *)   ┆
0x06a0…06c0 20 00 00 39 84 76 61 72 81 69 2c 81 6c 65 6e 67 74 68 31 2c 81 6c 65 6e 67 74 68 32 2c 81 6c 65   ┆   9 var i, length1, length2, le┆
0x06c0…06e0 6e 67 74 68 4f 75 74 2c 81 6c 65 6e 67 74 68 52 65 73 74 3a 81 69 6e 74 65 67 65 72 3b 00 00 16   ┆ngthOut, lengthRest: integer;   ┆
0x06e0…0700 88 69 6e 73 65 72 74 53 6c 61 73 68 3a 81 62 6f 6f 6c 65 61 6e 3b 00 01 20 00 00 05 42 45 47 49   ┆ insertSlash: boolean;      BEGI┆
0x0700…0720 4e 00 00 26 7b 23 62 23 82 50 72 69 6e 74 54 65 78 74 81 28 81 27 81 43 6f 6e 43 61 74 4e 61 6d   ┆N  &æ#b# PrintText ( ' ConCatNam┆
0x0720…0740 65 73 81 27 29 3b 23 65 23 7d 00 23 82 6c 65 6e 67 74 68 31 81 3a 3d 81 4c 61 73 74 4e 6f 6e 42   ┆es ');#e#å # length1 := LastNonB┆
0x0740…0760 6c 61 6e 6b 81 28 81 6e 61 6d 65 31 81 29 3b 00 00 23 82 6c 65 6e 67 74 68 32 81 3a 3d 81 4c 61   ┆lank ( name1 );  # length2 := La┆
0x0760…0780 73 74 4e 6f 6e 42 6c 61 6e 6b 81 28 81 6e 61 6d 65 32 81 29 3b 00 00 23 82 6c 65 6e 67 74 68 4f   ┆stNonBlank ( name2 );  # lengthO┆
0x0780…07a0 75 74 81 3a 3d 81 65 6c 65 6d 65 6e 74 73 81 28 81 6f 75 74 4e 61 6d 65 81 29 3b 00 00 27 82 69   ┆ut := elements ( outName );  ' i┆
0x07a0…07c0 66 81 28 6c 65 6e 67 74 68 31 81 3d 81 30 29 81 6f 72 81 28 6c 65 6e 67 74 68 32 81 3d 81 30 29   ┆f (length1 = 0) or (length2 = 0)┆
0x07c0…07e0 81 74 68 65 6e 00 00 45 84 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b 65 52 65 73 75 6c 74 28 55 6e   ┆ then  E Exception(MakeResult(Un┆
0x07e0…0800 69 76 65 72 73 61 6c 2c 2d 44 61 74 61 56 61 6c 75 65 49 6c 6c 65 67 61 6c 2c 73 74 72 69 6e 67   ┆iversal,-DataValueIllegal,string┆
0x0800…0820 54 6f 6f 53 68 6f 72 74 2c 30 29 29 3b 00 00 41 82 69 6e 73 65 72 74 53 6c 61 73 68 81 3a 3d 81   ┆TooShort,0));  A insertSlash := ┆
0x0820…0840 6e 6f 74 81 28 28 6e 61 6d 65 31 5b 6c 65 6e 67 74 68 31 5d 3d 73 6c 61 73 68 29 81 6f 72 81 28   ┆not ((name1Ælength1Å=slash) or (┆
0x0840…0860 6e 61 6d 65 32 5b 31 5d 3d 73 6c 61 73 68 29 29 3b 00 00 28 82 69 66 81 69 6e 73 65 72 74 53 6c   ┆name2Æ1Å=slash));  ( if insertSl┆
0x0860…0880 61 73 68 81 74 68 65 6e 81 69 81 3a 3d 81 31 81 65 6c 73 65 81 69 81 3a 3d 81 30 3b 00 2d 82 6c   ┆ash then i := 1 else i := 0; - l┆
0x0880…08a0 65 6e 67 74 68 52 65 73 74 81 3a 3d 81 6c 65 6e 67 74 68 4f 75 74 2d 28 6c 65 6e 67 74 68 31 2b   ┆engthRest := lengthOut-(length1+┆
0x08a0…08c0 6c 65 6e 67 74 68 32 2b 69 29 3b 00 00 1e 82 69 66 81 6c 65 6e 67 74 68 52 65 73 74 81 3e 3d 81   ┆length2+i);    if lengthRest >= ┆
0x08c0…08e0 30 81 74 68 65 6e 81 62 65 67 69 6e 00 27 84 43 6f 70 79 42 79 74 65 73 28 6e 61 6d 65 31 5b 31   ┆0 then begin ' CopyBytes(name1Æ1┆
0x08e0…0900 2e 2e 6c 65 6e 67 74 68 31 5d 2c 81 6f 75 74 4e 61 6d 65 29 3b 00 00 31 84 69 66 81 69 6e 73 65   ┆..length1Å, outName);  1 if inse┆
0x0900…0920 72 74 53 6c 61 73 68 81 74 68 65 6e 81 6f 75 74 4e 61 6d 65 5b 6c 65 6e 67 74 68 31 2b 31 5d 81   ┆rtSlash then outNameÆlength1+1Å ┆
0x0920…0940 3a 3d 81 73 6c 61 73 68 3b 00 00 1d 84 43 6f 70 79 42 79 74 65 73 28 6e 61 6d 65 32 5b 31 2e 2e   ┆:= slash;    CopyBytes(name2Æ1..┆
0x0940…0960 6c 65 6e 67 74 68 32 5d 2c 00 00 22 8e 6f 75 74 4e 61 6d 65 5b 6c 65 6e 67 74 68 31 2b 31 2b 69   ┆length2Å,  " outNameÆlength1+1+i┆
0x0960…0980 2e 2e 6c 65 6e 67 74 68 4f 75 74 5d 29 3b 00 17 84 69 66 81 6c 65 6e 67 74 68 52 65 73 74 81 3e   ┆..lengthOutÅ);   if lengthRest >┆
0x0980…09a0 81 30 81 74 68 65 6e 00 00 0f 86 46 69 6c 6c 42 79 74 65 73 28 27 81 27 2c 00 00 2a 90 6f 75 74   ┆ 0 then    FillBytes(' ',  * out┆
0x09a0…09c0 4e 61 6d 65 5b 6c 65 6e 67 74 68 31 2b 31 2b 69 2b 6c 65 6e 67 74 68 32 2e 2e 6c 65 6e 67 74 68   ┆NameÆlength1+1+i+length2..length┆
0x09c0…09e0 4f 75 74 5d 29 3b 00 0f 82 65 6e 64 81 65 6c 73 65 81 62 65 67 69 6e 00 00 46 84 45 78 63 65 70   ┆OutÅ);   end else begin  F Excep┆
0x09e0…0a00 74 69 6f 6e 28 4d 61 6b 65 52 65 73 75 6c 74 28 55 6e 69 76 65 72 73 61 6c 2c 2d 44 61 74 61 56   ┆tion(MakeResult(Universal,-DataV┆
0x0a00…0a20 61 6c 75 65 49 6c 6c 65 67 61 6c 2c 73 74 72 69 6e 67 54 6f 6f 53 68 6f 72 74 2c 2d 31 29 29 3b   ┆alueIllegal,stringTooShort,-1));┆
0x0a20…0a40 00 05 82 65 6e 64 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆   end;                         ┆
0x0a40…0a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆                                ┆
            […0x5…]
0x0b00…0b20 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5   ┆                                ┆
            […0xf…]
0x0d00…0d20 00 3a 7b 23 62 23 82 50 72 69 6e 74 76 61 72 81 28 81 27 81 43 6f 6e 63 61 74 4e 61 6d 65 73 82   ┆ :æ#b# Printvar ( ' ConcatNames ┆
0x0d20…0d40 4e 65 77 6e 61 6d 65 81 3d 81 27 81 2c 81 6f 75 74 6e 61 6d 65 81 29 3b 23 65 23 7d 00 1a 45 4e   ┆Newname = ' , outname );#e#å  EN┆
0x0d40…0d60 44 3b 82 28 2a 2a 2a 81 63 6f 6e 63 61 74 4e 61 6d 65 73 81 2a 2a 2a 29 00 07 84 28 2a 24 65 2a   ┆D; (*** concatNames ***)   (*$e*┆
0x0d60…0d80 29 00 00 27 50 52 4f 43 45 44 55 52 45 20 67 65 74 53 68 6f 72 74 69 64 20 28 56 41 52 20 6e 61   ┆)  'PROCEDURE getShortid (VAR na┆
0x0d80…0da0 6d 65 3a 20 66 75 6c 6c 49 64 3b 00 00 13 96 56 41 52 81 62 61 73 65 3a 81 69 6e 74 65 67 65 72   ┆me: fullId;    VAR base: integer┆
0x0da0…0dc0 3b 00 00 1b 96 56 41 52 81 66 69 72 73 74 53 68 6f 72 74 69 64 3a 81 6e 61 6d 65 31 36 29 3b 00   ┆;    VAR firstShortid: name16); ┆
0x0dc0…0de0 00 01 20 00 00 39 84 28 2a 81 53 63 61 6e 73 81 22 4e 61 6d 65 22 81 66 6f 72 81 74 68 65 81 66   ┆     9 (* Scans "Name" for the f┆
0x0de0…0e00 69 72 73 74 81 73 68 6f 72 74 69 64 81 61 66 74 65 72 81 69 6e 64 65 78 81 22 62 61 73 65 22 00   ┆irst shortid after index "base" ┆
0x0e00…0e20 00 30 87 28 69 2e 65 2e 81 4e 61 6d 65 5b 62 61 73 65 2b 31 2e 2e 65 6c 65 6d 65 6e 74 73 28 6e   ┆ 0 (i.e. NameÆbase+1..elements(n┆
0x0e20…0e40 61 6d 65 29 5d 81 69 73 81 73 63 61 6e 6e 65 64 29 2e 00 2b 87 54 68 65 81 22 66 69 72 73 74 81   ┆ame)Å is scanned). + The "first ┆
0x0e40…0e60 73 68 6f 72 74 69 64 22 81 69 73 81 64 65 66 69 6e 65 64 81 61 73 81 66 6f 6c 6c 6f 77 73 3a 00   ┆shortid" is defined as follows: ┆
0x0e60…0e80 00 01 20 00 00 22 89 31 3a 81 49 74 81 6d 61 79 81 62 65 81 70 72 65 66 69 78 65 64 81 62 79 81   ┆     " 1: It may be prefixed by ┆
0x0e80…0ea0 61 81 73 6c 61 73 68 2e 00 36 89 32 3a 81 49 74 81 69 73 81 73 79 6e 74 61 63 74 69 63 61 6c 6c   ┆a slash. 6 2: It is syntacticall┆
0x0ea0…0ec0 79 81 73 69 6d 69 6c 61 72 81 74 6f 81 61 81 50 61 73 63 61 6c 81 69 64 65 6e 74 69 66 69 65 72   ┆y similar to a Pascal identifier┆
0x0ec0…0ee0 00 18 8c 6f 66 81 75 70 81 74 6f 81 31 36 81 63 68 61 72 61 63 74 65 72 73 2e 00 35 89 33 3a 81   ┆   of up to 16 characters. 5 3: ┆
0x0ee0…0f00 54 68 65 81 65 6e 64 2d 64 65 6c 69 6d 69 74 65 72 81 6d 75 73 74 81 62 65 81 61 81 73 6c 61 73   ┆The end-delimiter must be a slas┆
0x0f00…0f20 68 2c 81 62 6c 61 6e 6b 73 2c 81 6f 72 81 74 68 65 00 00 18 8c 70 68 79 73 69 63 61 6c 81 65 6e   ┆h, blanks, or the    physical en┆
0x0f20…0f40 64 81 6f 66 81 22 4e 61 6d 65 22 2e 00 01 20 00 00 31 87 41 74 81 72 65 74 75 72 6e 81 22 62 61   ┆d of "Name".     1 At return "ba┆
0x0f40…0f60 73 65 22 81 69 73 81 75 70 64 61 74 65 64 81 74 6f 81 70 6f 69 6e 74 81 74 6f 81 74 68 65 81 6c   ┆se" is updated to point to the l┆
0x0f60…0f80 61 73 74 00 00 35 87 63 68 61 72 61 63 74 65 72 81 6f 66 81 74 68 65 81 73 68 6f 72 74 69 64 81   ┆ast  5 character of the shortid ┆
0x0f80…0fa0 66 6f 75 6e 64 2c 81 74 68 75 73 81 62 65 69 6e 67 81 22 62 61 73 65 22 81 6f 66 00 00 15 87 74   ┆found, thus being "base" of    t┆
0x0fa0…0fc0 68 65 81 6e 65 78 74 81 73 68 6f 72 74 69 64 2e 81 2a 29 00 00 01 20 00 00 1a 84 56 41 52 81 69   ┆he next shortid. *)        VAR i┆
0x0fc0…0fe0 2c 81 6e 61 6d 65 4c 61 73 74 3a 81 69 6e 74 65 67 65 72 3b 00 11 88 66 69 6e 69 73 68 3a 81 62   ┆, nameLast: integer;   finish: b┆
0x0fe0…1000 6f 6f 6c 65 61 6e 3b 00 00 01 20 00 00 05 42 45 47 49 4e 00 00 24 7b 23 62 23 82 50 72 69 6e 74   ┆oolean;       BEGIN  $æ#b# Print┆
0x1000…1020 54 65 78 74 81 28 27 81 47 65 74 73 68 6f 72 74 69 64 81 27 29 3b 23 65 23 7d 00 22 84 6e 61 6d   ┆Text (' Getshortid ');#e#å " nam┆
0x1020…1040 65 4c 61 73 74 81 3a 3d 81 4c 61 73 74 4e 6f 6e 42 6c 61 6e 6b 28 81 6e 61 6d 65 81 29 3b 00 2e   ┆eLast := LastNonBlank( name ); .┆
0x1040…1060 84 49 46 81 6e 61 6d 65 4c 61 73 74 81 3c 3d 81 62 61 73 65 81 54 48 45 4e 81 66 69 72 73 74 53   ┆ IF nameLast <= base THEN firstS┆
0x1060…1080 68 6f 72 74 69 64 81 3a 3d 81 4e 55 4c 4c 00 0b 84 45 4c 53 45 81 42 45 47 49 4e 00 00 2d 86 49   ┆hortid := NULL   ELSE BEGIN  - I┆
0x1080…10a0 46 81 4e 61 6d 65 5b 62 61 73 65 2b 31 5d 81 3d 81 73 6c 61 73 68 81 54 48 45 4e 81 62 61 73 65   ┆F NameÆbase+1Å = slash THEN base┆
0x10a0…10c0 81 3a 3d 81 62 61 73 65 2b 31 3b 00 00 01 20 00 00 18 86 49 46 81 62 61 73 65 81 3d 81 6e 61 6d   ┆ := base+1;        IF base = nam┆
0x10c0…10e0 65 4c 61 73 74 81 54 48 45 4e 00 43 88 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b 65 52 65 73 75 6c   ┆eLast THEN C Exception(MakeResul┆
0x10e0…1100 74 28 55 6e 69 76 65 72 73 61 6c 2c 2d 44 61 74 61 56 61 6c 75 65 49 6c 6c 65 67 61 6c 2c 6e 61   ┆t(Universal,-DataValueIllegal,na┆
0x1100…1120 6d 65 4d 69 73 73 69 6e 67 2c 2d 31 29 29 3b 00 00 27 86 49 46 81 6e 6f 74 81 4c 65 67 61 6c 43   ┆meMissing,-1));  ' IF not LegalC┆
0x1120…1140 68 61 72 81 28 81 6e 61 6d 65 5b 62 61 73 65 2b 31 5d 81 29 81 54 48 45 4e 00 00 00 00 00 00 00   ┆har ( nameÆbase+1Å ) THEN       ┆
0x1140…1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆                                ┆
            […0x5…]
0x1200…1220 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5   ┆                                ┆
            […0x17…]
0x1500…1520 00 41 88 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b 65 52 65 73 75 6c 74 28 55 6e 69 76 65 72 73 61   ┆ A Exception(MakeResult(Universa┆
0x1520…1540 6c 2c 2d 44 61 74 61 56 61 6c 75 65 49 6c 6c 65 67 61 6c 2c 6e 61 6d 65 45 72 72 6f 72 2c 2d 31   ┆l,-DataValueIllegal,nameError,-1┆
0x1540…1560 29 29 3b 00 00 01 20 00 00 19 88 69 81 3a 3d 81 31 3b 81 66 69 6e 69 73 68 81 3a 3d 81 66 61 6c   ┆));        i := 1; finish := fal┆
0x1560…1580 73 65 3b 00 00 07 88 52 45 50 45 41 54 00 00 29 8a 49 46 81 4c 65 67 61 6c 43 68 61 72 81 28 81   ┆se;    REPEAT  ) IF LegalChar ( ┆
0x1580…15a0 6e 61 6d 65 5b 62 61 73 65 2b 31 5d 81 29 81 54 48 45 4e 81 42 45 47 49 4e 00 00 19 8c 77 69 74   ┆nameÆbase+1Å ) THEN BEGIN    wit┆
0x15a0…15c0 68 81 63 81 3d 81 6e 61 6d 65 5b 62 61 73 65 2b 31 5d 81 64 6f 00 00 1e 8c 69 66 81 28 27 41 27   ┆h c = nameÆbase+1Å do    if ('A'┆
0x15c0…15e0 3c 3d 63 29 81 61 6e 64 81 28 63 3c 3d 27 5a 27 29 81 74 68 65 6e 00 31 8e 66 69 72 73 74 73 68   ┆<=c) and (c<='Z') then 1 firstsh┆
0x15e0…1600 6f 72 74 69 64 5b 69 5d 81 3a 3d 81 63 68 72 28 6f 72 64 28 27 61 27 29 2d 6f 72 64 28 27 41 27   ┆ortidÆiÅ := chr(ord('a')-ord('A'┆
0x1600…1620 29 2b 6f 72 64 28 63 29 29 00 00 05 8c 65 6c 73 65 00 00 16 8e 66 69 72 73 74 73 68 6f 72 74 69   ┆)+ord(c))    else    firstshorti┆
0x1620…1640 64 5b 69 5d 81 3a 3d 81 63 3b 00 1a 8c 62 61 73 65 81 3a 3d 81 62 61 73 65 2b 31 3b 81 69 81 3a   ┆dÆiÅ := c;   base := base+1; i :┆
0x1640…1660 3d 81 69 2b 31 3b 00 0f 8a 45 4e 44 81 45 4c 53 45 81 42 45 47 49 4e 00 00 10 8c 66 69 6e 69 73   ┆= i+1;   END ELSE BEGIN    finis┆
0x1660…1680 68 81 3a 3d 81 74 72 75 65 3b 00 23 8c 49 46 81 4e 4f 54 81 28 4e 61 6d 65 5b 62 61 73 65 2b 31   ┆h := true; # IF NOT (NameÆbase+1┆
0x1680…16a0 5d 81 3d 81 73 6c 61 73 68 29 81 54 48 45 4e 00 00 41 8e 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b   ┆Å = slash) THEN  A Exception(Mak┆
0x16a0…16c0 65 52 65 73 75 6c 74 28 55 6e 69 76 65 72 73 61 6c 2c 2d 44 61 74 61 56 61 6c 75 65 49 6c 6c 65   ┆eResult(Universal,-DataValueIlle┆
0x16c0…16e0 67 61 6c 2c 6e 61 6d 65 45 72 72 6f 72 2c 2d 31 29 29 3b 00 00 05 8a 45 4e 44 3b 00 00 36 88 55   ┆gal,nameError,-1));    END;  6 U┆
0x16e0…1700 4e 54 49 4c 81 28 62 61 73 65 3d 6e 61 6d 65 4c 61 73 74 29 81 4f 52 81 66 69 6e 69 73 68 81 6f   ┆NTIL (base=nameLast) OR finish o┆
0x1700…1720 72 81 28 69 3e 53 68 6f 72 74 69 64 4c 65 6e 67 74 68 29 3b 00 1a 88 49 46 81 69 81 3e 81 53 68   ┆r (i>ShortidLength);   IF i > Sh┆
0x1720…1740 6f 72 74 49 64 4c 65 6e 67 74 68 81 54 48 45 4e 00 43 8a 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b   ┆ortIdLength THEN C Exception(Mak┆
0x1740…1760 65 52 65 73 75 6c 74 28 55 6e 69 76 65 72 73 61 6c 2c 2d 44 61 74 61 76 61 6c 75 65 49 6c 6c 65   ┆eResult(Universal,-DatavalueIlle┆
0x1760…1780 67 61 6c 2c 6e 61 6d 65 54 6f 6f 4c 6f 6e 67 2c 2d 31 29 29 3b 00 00 1a 88 49 46 81 69 81 3c 81   ┆gal,nameTooLong,-1));    IF i < ┆
0x1780…17a0 53 68 6f 72 74 49 64 4c 65 6e 67 74 68 81 54 48 45 4e 00 30 8a 46 69 6c 6c 42 79 74 65 73 81 28   ┆ShortIdLength THEN 0 FillBytes (┆
0x17a0…17c0 27 81 27 2c 66 69 72 73 74 53 68 6f 72 74 49 64 5b 69 2e 2e 53 68 6f 72 74 49 64 4c 65 6e 67 74   ┆' ',firstShortIdÆi..ShortIdLengt┆
0x17c0…17e0 68 5d 29 3b 00 05 82 45 4e 44 3b 00 00 2d 7b 23 62 23 70 72 69 6e 74 56 61 72 28 27 53 68 6f 72   ┆hÅ);   END;  -æ#b#printVar('Shor┆
0x17e0…1800 74 49 64 20 3d 20 27 2c 20 66 69 72 73 74 53 68 6f 72 74 49 64 29 3b 23 65 23 7d 00 00 19 45 4e   ┆tId = ', firstShortId);#e#å   EN┆
0x1800…1820 44 3b 82 28 2a 2a 2a 81 67 65 74 53 68 6f 72 74 69 64 81 2a 2a 2a 29 00 00 07 84 28 2a 24 65 2a   ┆D; (*** getShortid ***)    (*$e*┆
0x1820…1840 29 00 00 36 50 52 4f 47 52 41 4d 20 53 43 41 4e 49 4d 50 4c 45 4d 45 4e 54 20 4f 42 4a 45 43 54   ┆)  6PROGRAM SCANIMPLEMENT OBJECT┆
0x1840…1860 20 49 54 45 4d 53 43 41 4e 20 57 49 54 48 20 53 43 41 4e 4c 4f 43 41 4c 53 3b 00 01 20 00 00 27   ┆ ITEMSCAN WITH SCANLOCALS;     '┆
0x1860…1880 84 65 6e 74 72 79 81 47 65 74 49 6e 66 81 77 69 74 68 81 72 65 63 6f 72 64 81 74 74 3a 81 72 65   ┆ entry GetInf with record tt: re┆
0x1880…18a0 66 3b 81 65 6e 64 3b 00 00 16 8b 28 2a 81 6f 75 74 81 4e 61 6d 65 3a 81 73 68 6f 72 74 69 64 3b   ┆f; end;    (* out Name: shortid;┆
0x18a0…18c0 00 15 8e 4f 55 54 81 6b 69 6e 64 3a 81 49 6e 74 65 67 65 72 81 2a 29 00 00 01 20 00 00 04 84 56   ┆   OUT kind: Integer *)        V┆
0x18c0…18e0 41 52 00 10 86 66 6f 75 6e 64 3a 81 62 6f 6f 6c 65 61 6e 3b 00 12 86 61 75 78 54 65 78 74 3a 81   ┆AR   found: boolean;   auxText: ┆
0x18e0…1900 73 68 6f 72 74 49 64 3b 00 06 84 42 45 47 49 4e 00 21 7b 23 62 23 20 50 72 69 6e 74 54 65 78 74   ┆shortId;   BEGIN !æ#b# PrintText┆
0x1900…1920 20 28 27 20 47 65 74 49 6e 66 20 27 29 3b 20 23 65 23 7d 00 00 15 86 57 49 54 48 81 64 61 74 61   ┆ (' GetInf '); #e#å    WITH data┆
0x1920…1940 5e 5e 81 44 4f 81 42 45 47 49 4e 00 00 22 88 43 68 65 63 6b 28 6d 6f 74 68 65 72 73 74 75 62 5e   ┆^^ DO BEGIN  " Check(motherstub^┆
0x1940…1960 5e 2e 44 69 72 47 61 74 65 2e 4c 6f 63 6b 29 3b 00 03 88 69 6e 00 00 10 8a 66 6f 75 6e 64 81 3a   ┆^.DirGate.Lock);   in    found :┆
0x1960…1980 3d 81 66 61 6c 73 65 3b 00 19 8a 77 68 69 6c 65 81 6e 6f 74 81 66 6f 75 6e 64 81 64 6f 81 62 65   ┆= false;   while not found do be┆
0x1980…19a0 67 69 6e 00 00 29 8c 57 49 54 48 81 64 81 3d 81 63 75 72 72 42 75 63 6b 65 74 5e 5e 2e 45 6e 74   ┆gin  ) WITH d = currBucket^^.Ent┆
0x19a0…19c0 72 69 65 73 5e 5e 81 44 4f 81 42 45 47 49 4e 00 00 32 8e 57 48 49 4c 45 81 28 6c 61 73 74 49 81   ┆ries^^ DO BEGIN  2 WHILE (lastI ┆
0x19c0…19e0 3c 81 62 75 63 6b 65 74 53 69 7a 65 29 81 41 4e 44 81 4e 4f 54 81 66 6f 75 6e 64 81 44 4f 81 42   ┆< bucketSize) AND NOT found DO B┆
0x19e0…1a00 45 47 49 4e 00 12 90 6c 61 73 74 49 81 3a 3d 81 6c 61 73 74 49 2b 31 3b 00 29 90 66 6f 75 6e 64   ┆EGIN   lastI := lastI+1; ) found┆
0x1a00…1a20 81 3a 3d 28 64 5b 6c 61 73 74 49 5d 2e 6b 69 6e 64 81 3c 3e 81 46 72 65 65 45 6e 74 72 79 29 81   ┆ :=(dÆlastIÅ.kind <> FreeEntry) ┆
0x1a20…1a40 41 4e 44 00 00 20 98 28 64 5b 6c 61 73 74 49 5d 2e 6b 69 6e 64 81 3c 3e 81 4c 6f 63 6b 65 64 45   ┆AND    (dÆlastIÅ.kind <> LockedE┆
0x1a40…1a60 6e 74 72 79 29 3b 00 05 8e 45 4e 44 3b 00 00 14 8e 49 46 81 66 6f 75 6e 64 81 54 48 45 4e 81 42   ┆ntry);   END;    IF found THEN B┆
0x1a60…1a80 45 47 49 4e 00 15 90 46 69 6c 6c 42 79 74 65 73 28 27 81 27 2c 4e 61 6d 65 29 3b 00 00 20 90 43   ┆EGIN   FillBytes(' ',Name);    C┆
0x1a80…1aa0 6f 70 79 42 79 74 65 73 28 64 5b 6c 61 73 74 49 5d 2e 4e 61 6d 65 2c 81 4e 61 6d 65 29 3b 00 17   ┆opyBytes(dÆlastIÅ.Name, Name);  ┆
0x1aa0…1ac0 90 6b 69 6e 64 81 3a 3d 81 64 5b 6c 61 73 74 49 5d 2e 6b 69 6e 64 3b 00 00 01 20 00 00 24 90 69   ┆ kind := dÆlastIÅ.kind;      $ i┆
0x1ac0…1ae0 66 81 4e 65 78 74 56 61 6c 41 72 67 28 81 61 75 78 54 65 78 74 81 29 81 74 68 65 6e 81 62 65 67   ┆f NextValArg( auxText ) then beg┆
0x1ae0…1b00 69 6e 00 19 92 46 69 6c 6c 42 79 74 65 73 28 27 81 27 2c 81 61 75 78 54 65 78 74 29 3b 00 00 00   ┆in   FillBytes(' ', auxText);   ┆
0x1b00…1b20 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5   ┆                                ┆
            […0xf…]
0x1d00…1d20 00 0d 92 63 61 73 65 81 6b 69 6e 64 81 6f 66 00 00 38 89 6c 6f 61 64 65 64 50 72 6f 67 72 61 6d   ┆   case kind of  8 loadedProgram┆
0x1d20…1d40 84 3a 84 43 6f 70 79 42 79 74 65 73 28 27 70 72 65 6c 6f 61 64 65 64 81 70 72 6f 67 72 61 6d 27   ┆ : CopyBytes('preloaded program'┆
0x1d40…1d60 2c 61 75 78 54 65 78 74 29 3b 00 35 89 6c 6f 61 64 65 64 4c 69 62 72 61 72 79 84 3a 84 43 6f 70   ┆,auxText); 5 loadedLibrary : Cop┆
0x1d60…1d80 79 42 79 74 65 73 28 27 6c 69 62 72 61 72 79 81 6d 6f 64 75 6c 65 27 2c 61 75 78 54 65 78 74 29   ┆yBytes('library module',auxText)┆
0x1d80…1da0 3b 00 00 35 89 67 65 6e 65 72 61 6c 4f 62 6a 65 63 74 84 3a 84 43 6f 70 79 42 79 74 65 73 28 27   ┆;  5 generalObject : CopyBytes('┆
0x1da0…1dc0 67 65 6e 65 72 61 6c 81 6f 62 6a 65 63 74 27 2c 61 75 78 54 65 78 74 29 3b 00 00 33 89 61 63 63   ┆general object',auxText);  3 acc┆
0x1dc0…1de0 65 73 73 4f 62 6a 65 63 74 85 3a 84 43 6f 70 79 42 79 74 65 73 28 27 61 63 63 65 73 73 81 6f 62   ┆essObject : CopyBytes('access ob┆
0x1de0…1e00 6a 65 63 74 27 2c 61 75 78 54 65 78 74 29 3b 00 00 31 89 70 6f 69 6e 74 65 72 49 74 65 6d 86 3a   ┆ject',auxText);  1 pointerItem :┆
0x1e00…1e20 84 43 6f 70 79 42 79 74 65 73 28 27 70 6f 69 6e 74 65 72 81 69 74 65 6d 27 2c 61 75 78 54 65 78   ┆ CopyBytes('pointer item',auxTex┆
0x1e20…1e40 74 29 3b 00 00 2f 89 73 75 62 44 69 72 8b 3a 84 43 6f 70 79 42 79 74 65 73 28 27 6c 6f 63 61 6c   ┆t);  / subDir : CopyBytes('local┆
0x1e40…1e60 81 64 69 72 65 63 74 6f 72 79 27 2c 61 75 78 54 65 78 74 29 3b 00 00 05 92 65 6e 64 3b 00 00 0a   ┆ directory',auxText);    end;   ┆
0x1e60…1e80 90 65 6e 64 3b 81 7b 69 66 7d 00 12 8e 45 4e 44 3b 81 7b 81 49 46 81 66 6f 75 6e 64 81 7d 00 0e   ┆ end; æifå   END; æ IF found å  ┆
0x1e80…1ea0 8c 45 4e 44 3b 81 7b 81 57 49 54 48 81 7d 00 18 8c 69 66 81 6e 6f 74 81 66 6f 75 6e 64 81 74 68   ┆ END; æ WITH å   if not found th┆
0x1ea0…1ec0 65 6e 81 62 65 67 69 6e 00 37 8e 53 74 6f 70 43 68 65 63 6b 28 4e 65 78 74 49 6e 53 65 74 28 4d   ┆en begin 7 StopCheck(NextInSet(M┆
0x1ec0…1ee0 6f 74 68 65 72 53 74 75 62 5e 5e 2e 42 75 63 6b 65 74 73 2c 43 75 72 72 42 75 63 6b 65 74 29 29   ┆otherStub^^.Buckets,CurrBucket))┆
0x1ee0…1f00 3b 00 00 0c 8e 6c 61 73 74 49 81 3a 3d 81 30 3b 00 05 8c 65 6e 64 3b 00 00 19 8a 65 6e 64 3b 81   ┆;    lastI := 0;   end;    end; ┆
0x1f00…1f20 7b 81 77 68 69 6c 65 81 6e 6f 74 81 66 6f 75 6e 64 81 7d 00 00 10 88 64 6f 81 7b 81 6e 6f 74 68   ┆æ while not found å    do æ noth┆
0x1f20…1f40 69 6e 67 81 7d 3b 00 01 20 00 00 22 88 43 68 65 63 6b 28 4d 6f 74 68 65 72 53 74 75 62 5e 5e 2e   ┆ing å;     " Check(MotherStub^^.┆
0x1f40…1f60 44 69 72 47 61 74 65 2e 4f 70 65 6e 29 3b 00 01 20 00 00 12 88 69 66 81 6e 6f 74 81 66 6f 75 6e   ┆DirGate.Open);       if not foun┆
0x1f60…1f80 64 81 74 68 65 6e 00 39 8a 4f 62 6a 52 65 74 75 72 6e 28 4d 61 6b 65 52 65 73 75 6c 74 28 6f 62   ┆d then 9 ObjReturn(MakeResult(ob┆
0x1f80…1fa0 6a 44 69 72 46 61 6d 69 6c 79 2c 2d 45 78 74 52 65 66 4e 6f 74 46 6f 75 6e 64 2c 30 2c 30 29 29   ┆jDirFamily,-ExtRefNotFound,0,0))┆
0x1fa0…1fc0 3b 00 00 15 86 65 6e 64 3b 81 7b 81 77 69 74 68 81 64 61 74 61 5e 5e 81 7d 00 00 01 20 00 00 16   ┆;    end; æ with data^^ å       ┆
0x1fc0…1fe0 84 45 4e 44 3b 82 28 2a 2a 2a 81 47 65 74 49 6e 66 81 2a 2a 2a 29 00 00 00 00 00 00 00 00 00 00   ┆ END; (*** GetInf ***)          ┆
0x1fe0…2000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆                                ┆
0x2000…2020 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5   ┆                                ┆
            […0x27…]
0x2500…2520 00 1f 6f 74 68 65 72 77 69 73 65 20 73 63 61 6e 4f 74 68 65 72 20 77 69 74 68 20 72 65 63 6f 72   ┆  otherwise scanOther with recor┆
0x2520…2540 64 00 00 09 82 74 31 3a 81 72 65 66 3b 00 00 05 82 65 6e 64 3b 00 00 05 62 65 67 69 6e 00 00 34   ┆d    t1: ref;    end;   begin  4┆
0x2540…2560 82 45 78 63 65 70 74 69 6f 6e 28 4d 61 6b 65 52 65 73 75 6c 74 28 55 6e 69 76 65 72 73 61 6c 2c   ┆ Exception(MakeResult(Universal,┆
0x2560…2580 65 6e 74 72 79 49 6c 6c 65 67 61 6c 2c 30 2c 30 29 81 29 3b 00 04 65 6e 64 3b 00 01 20 00 00 17   ┆entryIllegal,0,0) );  end;      ┆
0x2580…25a0 45 4e 44 3b 82 28 2a 2a 2a 2a 2a 81 53 63 61 6e 81 2a 2a 2a 2a 2a 29 00 00 44 7b 5c 5c 5c 5c 5c   ┆END; (***** Scan *****)  DæØØØØØ┆
0x25a0…25c0 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c   ┆ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ┆
0x25c0…25e0 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 5c 00 43   ┆ØØØØØØØØØØØØØØØØØØØØØØØØØØØØØØ C┆
0x25e0…2600 28 2a 20 67 6c 6f 62 61 6c 20 2a 29 20 46 55 4e 43 54 49 4f 4e 20 56 65 72 69 66 79 4f 70 65 72   ┆(* global *) FUNCTION VerifyOper┆
0x2600…2620 61 74 69 6f 6e 20 28 70 65 72 6d 69 73 73 69 6f 6e 3a 20 53 74 75 62 70 65 72 6d 69 73 73 69 6f   ┆ation (permission: Stubpermissio┆
0x2620…2640 6e 73 3b 00 00 1c a7 56 41 52 81 74 61 72 67 65 74 53 74 75 62 3a 81 53 74 75 62 4c 6f 63 52 65   ┆ns;    VAR targetStub: StubLocRe┆
0x2640…2660 66 3b 00 19 a7 4e 61 6d 65 3a 81 53 68 6f 72 74 69 64 29 3a 81 62 6f 6f 6c 65 61 6e 3b 00 00 01   ┆f;   Name: Shortid): boolean;   ┆
0x2660…2680 20 00 00 37 86 28 2a 81 56 65 72 69 66 69 65 73 81 74 68 61 74 81 74 68 65 81 63 61 6c 6c 65 72   ┆   7 (* Verifies that the caller┆
0x2680…26a0 81 6f 66 81 74 68 65 81 53 74 75 62 81 73 79 73 74 65 6d 81 68 61 73 81 74 68 65 00 00 35 89 70   ┆ of the Stub system has the  5 p┆
0x26a0…26c0 65 72 6d 69 73 73 69 6f 6e 81 22 70 65 72 6d 69 73 73 69 6f 6e 22 81 66 6f 72 81 22 4e 61 6d 65   ┆ermission "permission" for "Name┆
0x26c0…26e0 22 81 69 6e 81 22 54 61 72 67 65 74 53 74 75 62 22 81 2d 00 00 22 89 6f 72 81 74 68 61 74 81 22   ┆" in "TargetStub" -  " or that "┆
[…truncated at 200 lines…]