}KM~ DIBOL042.A@ DIBOL042.ABACKUP/COMMENT=VAX DIBOL Kit Building Procedure/INTERCHANGE/LOG/NOASSIST/VERIFY [.A]*.* DIBOL$NETKITS:[V42-07]DIBOL042.A/SAVE_SET/LABEL=DIBOL/REWIND VAX DIBOL Kit Building Procedure FERGUSON G@c|A5.5 _DUMPIE::  _$2$DUA23: V5.5-2 ~  *[KITS.V42-07.KIT.A]DBLIVP.DBL;1+,*3../G 4W&-~/,0123KPWO56`Ĕ7` Z|89@A GGHJ + .TITLE "Installation Verification Program" .IDENT "VAX DIBOL V4.2";+,; DIBOL-83 Installation Verification Program;; 21-April-1983 Jim VanGilder;; 7-July-1983 JV Modified for cross-system compatibilityE; 11-March-1985 JV (VAX) Output minor version in completion message,; 21-Jan-1986 ML/LWM Add DIBOL-85 features;; 28-Feb-1986 LWM/JV More features. Take out support for; non-VAX systems.4; 21-Apr-1986 LWM If the terminal is unknown, this'; didn't handle as gracefully as I; might have liked.6; 13-oct-1989 PJH Fixup for V4.16; 22-May-1991 PJH Fixup for V4.2;-LITERAL CR, I, 13 LF, I, 10 NTESTS, I, 16 ABE, I, 1RECORD B, I1 C, I1 RFADDR, A6 POS, I4 POST, I4 DAY, A7 TIM, D6 TO, D6 SRT, P4 TM, D6 PCOUNT, P2 I1, I1, %B("101") I2, I2, %B("110011001100111") I4, I4, %X("FFFFFFFA")EXTERNAL FUNCTION MOD, PRECORD COUNTER, I2 REC, A301 ARRAY, [2,3]A3, "ABC","DEF","GHI","JKL","MNO" RECORD WORK ERRNUM, D3 ERRLIN, D3 BUF1, A30 BUF2, A30 SIZE1, D2 SIZE2, D2 CHECK, D1, 0 COUNT, D2, 00 JOBNUM, D9 TIME, D6 TTNUM, D10 DOLLAR, A15 CENTS, D10, 1234123499 ZDAT, D1 PDAT, P1 IDAT, I1 PKSIZE, D2 ZB, A10, "LOWER CASE" RECORD ,X XERRNM, A3 XERRLN, A3 RECORD PAKREC FIELD1, D7, -6333333RECORDU LINE, A70, "+--------------------------------------------------------------------+"V TITLE, A70, "| Starting _______________________ Installation Verification Program |"W HOWMNY, A70, "| Seventeen tests follow |"W ENDTTL, A70, "| _______________________ IVP successfully completed |"W ENDTTL2, A70, "| IVP completed with errors |"W WARNING, A70, "| Next section may take up to two minutes |"RECORD,X , A81 TTLID, A23 , A114 ETTLID, A23 RECORD SLSTRTQ , A70, "| Starting SLEEP at HH:MM:SS.TT for 4.5 seconds |"RECORD,X , A26 SLSTIM, A11 RECORD SLDONEQ , A70, "| Finished SLEEP at HH:MM:SS.TT |"RECORD,X , A26 SLDTIM, A11 RECORD DATTIMQ , A70, "| Date is DD-MMM-YYYY Time is HH:MM |"RECORD,X , A16 TODAY, A11 , A14 NOW, A5 RECORD JOBTTQ , A70, "| Job number is NNNNNNNNN Terminal number is NNNNNN |"RECORD,X , A22 AJOBNM, A9 , A21 ATTNUM, A10 RECORD VLINEQ , A70, '| DIBOL Run-Time Library Version is "XXXXXXXXXXXXXXXXXXX" |'RECORD,X , A43 VRSION, A19 RECORD TSTMSGQ , A70, "| Completed test number NN XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |"RECORD,X , A30 TSTNUM, D2 SEGMENT, A2 TSTING, A32 REST, A4RECORD,X , A30 XTSTNM, A2 RECORD TTNAMEQ , A70, "| Unknown terminal: |" RECORD, X , A30 TERMNAME, A10 RECORD REASON# , A, "| _______________________ " WHY , A35 , A, " |"PROC ONERROR ERRTRP TTLID = "VAX DIBOL Version 4.2" ETTLID = TTLID FOR TSTNUM FROM 1 THRU NTESTS BEGIN USING TSTNUM SELECT (1), BEGIN TSTING = "(OPEN, DISPLAY)" OPEN (1,O:P,"SYS$OUTPUT:")C DISPLAY (1,CR,10,10,LINE,13,LF,TITLE,13,10,LINE,13,10,HOWMNY,13)1; Check out attributes, expressions, subscripting7 DISPLAY (1, 5*2, TSTMSG(1,30),TSTNUM, & TSTING, REST, 20-7) END (2), BEGIN TSTING = "(WRITES,FLUSH)" OPEN (2,O,"FILE.DAT") BUF1 = "WRITES/READS TEST" WRITES (2,BUF1)1 WRITES (2, 123) FLUSH (2) CLOSE 2 DISPLAY (1,10,TSTMSG,13) END (3), BEGIN TSTING = "(READS,FIND)" OPEN (2,I,"FILE.DAT") READS (2,BUF2,ERREX2) IF BUF2 .NE. BUF1 GOTO ERREX2$ FIND (2) ; Point to next record.% XCALL DBL$GETFA (2, "RFA", RFADDR) DISPLAY (1,10,TSTMSG,13) END (4), BEGIN TSTING = "(READ by RFA)" READ(2, REC, RFA:RFADDR)% IF REC .NE. "Testing 123, Testing" GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) CLOSE 2 END (5), BEGIN TSTING = "(Error handling)" ONERROR T5TRAP7 COUNT = 8/COUNT ; Divide by zero should cause error GOTO ERREX2T5TRAP, ONERROR ERRTRP DISPLAY (1,10,TSTMSG,13) END (6), BEGIN TSTING = "(Arithmetic)" CLEAR COUNT PCOUNT = COUNT COUNT =PCOUNT + 10.99999999 INCR COUNT DECR COUNT' COUNT = %INTEGER(COUNT) + %PACKED(2) IF COUNT .NE. 12 GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (7), BEGIN TSTING = "(Booleans)"# IF COUNT .NE. 12 .OR. CHECK.NE.0 GOTO ERREX2) IF .BNOT. ( (I1 .BAND. I2) .BXOR. I4 ) GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (8), BEGIN TSTING = "(CALL, RETURN)" CALL SUBR8 DISPLAY (1,10,TSTMSG,13) END (9), BEGIN% TSTING = "(Substrings, MD arrays)"1 IF .NOT. (ARRAY[2,2](1,3) .EQ. ARRAY[2,2](1:3)&& .AND. ARRAY[1,1] .EQS. "ABC ") GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (10), BEGIN TSTING ="(Functions)"4 POS = %INSTR (2,"abcdefghijklmnopqrstuvwxyz","f")7 XCALL INSTR(2,"abcdefghijklmnopqrstuvwxyz","f",POST) IF POS .NE. POST GOTO ERREX2 TODAY = %DATE XCALL DATE (DAY) IF DAY .NE. TODAY GOTO ERREX2 TIM = %TIME XCALL TIME (TM) SRT = %MOD(9,2) IF SRT .NE. 1 GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (11), BEGIN TSTING = "(UESL XCALLS)" CLOSE 2 XCALL DELET ("FILE.DAT") XCALL JBNO (JOBNUM) AJOBNM = JOBNUM,"ZZZZZZZZX" XCALL VERSN (VRSION) ONERROR TNMBR_ERROR XCALL TNMBR (TTNUM) ATTNUM = TTNUM,"ZZZZZZZZZX-"TNMBR_CONTINUE, ONERROR ERRTRP DISPLAY (1,10,TSTMSG,13)( EXIT ; Skip over the error handling. TNMBR_ERROR, XCALL ERROR (ERRNUM) IF ERRNUM .NE. 59 GOTO ERRTRP/ TTNUM = -2 ; set terminal number as a flag. ATTNUM = "??????????" ; Unknown, remember!9 XCALL DBL$TTNAME (TERMNAME) ; Get the terminal's name.) GOTO TNMBR_CONTINUE ;.. and continue. END (12), BEGIN TSTING = "(SLEEP)"& XCALL SYS$ASCTIM (,SLSTIM,,%VAL(1))" DISPLAY (1,10,SLSTRT,13) SLEEP 4.5& XCALL SYS$ASCTIM (,SLDTIM,,%VAL(1)) DISPLAY (1,10,SLDONE,13) DISPLAY (1,10,TSTMSG,13) END (13), BEGIN) TSTING = "(XCALL MONEY, Edit-strings)" XCALL MONEY("%")) DOLLAR = CENTS, "%%%%%%%%%%.XX"* IF DOLLAR .NE. " %12341234.99" GOTO ERREX21 DOLLAR = (CENTS * .01), "%%%%%%%%%%.XX"* IF DOLLAR .NE. " %12341234.99" GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (14), BEGIN+ TSTING = "(XCALL to a DIBOL subroutine)" XCALL IVPSB(ZDAT) IF ZDAT .NE. 4 GOTO ERREX2 XCALL IVPSB(PDAT) IF PDAT .NE. 4 GOTO ERREX2 XCALL IVPSB(IDAT) IF IDAT .NE. 4 GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (15), BEGIN TSTING = "(LOCASE)" LOCASE ZB! IF ZB .NE. "lower case" GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) END (16), BEGINSENDBLOCK, BEGIN) IF TTNUM .EQ. -2 ; unknown terminal??? BEGIN' TSTING = "(SEND, RECV - Failed)" DISPLAY (1,10,TSTMSG,13). DISPLAY (1, 10, 7, 7, 7, TTNAME, 13) EXIT SENDBLOCK END# TSTING = "(SEND, RECV : PART 1)") BUF1 = "DBLIVP SEND/RECV TEST MESSAGE" SEND (BUF1,"DBLIVP",TTNUM) XCALL SIZE (BUF1,SIZE1) XCALL RCVID("DBLIVP") RECV (BUF2,ERREX2,SIZE2) IF SIZE2 .LE. 0 GOTO ERREX2 IF SIZE2 .NE. SIZE1 GOTO ERREX2& IF BUF1(1,SIZE1) .NE. BUF2(1,SIZE2) GOTO ERREX2 SEGMENT = "A " DISPLAY (1,10,TSTMSG,13) DISPLAY (1,10,WARNING,13)# TSTING = "(SEND, RECV : PART 2)" SEGMENT = "B "- XCALL RUNJB ("SYS$EXAMPLES:DBLIVPDET", -1) SEND (BUF1, "DBLIVPDET", -1) CLEAR COUNTER,SIZE2WAIT, SLEEP 5 INCR COUNTER! IF COUNTER .GT. 12 GOTO ERREX2 RECV (BUF2, WAIT, SIZE2) IF SIZE2 .NE. SIZE1 GOTO ERREX2 DISPLAY (1,10,TSTMSG,13) CLEAR SEGMENT END END ENDUSING END TSTING = "(FOR, USING)" DISPLAY (1,10,TSTMSG,13) XCALL TIME (TIME) NOW = TIME(1,4),"XX:XX" DISPLAY (1,10,LINE,13) DISPLAY (1,10,DATTIM,13) DISPLAY (1,10,JOBTT,13) DISPLAY (1,10,VLINE,13)B; One day, if there are any other "acceptable" failures, stick the; reasons here. IF TTNUM .EQ. -2 THEN BEGIN) DISPLAY (1,10,LINE,13,10,ENDTTL2,13)6 WHY = TTNAME (9,35) ; Pluck the text and ttname. DISPLAY (1, 10, REASON, 13, 10, LINE, 13) END ELSE6 DISPLAY (1,10,LINE,13,10,ENDTTL,13,10,LINE,13,10) CLOSE 1 STOPSUBR8,) XCALL FLAGS (7000000) ; No stop message RETURNERRTRP, XCALL ERROR (ERRNUM,ERRLIN); DISPLAY (1,10,"*** ERROR # ",XERRNM," at line ",XERRLN,13)ERREX2,4 DISPLAY (1,10,7,"*** ERROR during test ",XTSTNM,13)( DISPLAY (1,10,"*** ABORTING ***",13,10) CLOSE 1 STOPEND*[KITS.V42-07.KIT.A]DBLIVP.EXE;1+,"3(./G 4-~/,0123 KPWO563ա7`g.Z|89@A GGHJ00D`0205ԡ9. DBLIVPVAX DIBOL V4.2ԡ05-13    ?!@ DBLRTL_001 @!  LIBRTL2_001! LIBRTL_001PL * DBLIVP      #&,./1557,gjm    gjFF>FFFFVIF F F( 8QFn  FF <F@ ^F#                    ! 5 E F G S  ] gU uS        )+-JL T^`u     UI DTLI+W+,<IVPSB *<L+,@LMOD X+p./3DFMY %,?EVX_k|"35<BLRSYlr!39LRcelr%'.?Tbhp|)5;GRSYlrs 3FL]_fr}!'3@FY_pry~  $3?KY_ms  ( . A E F L N T [ n z   6 < = g n p q }  VAX DIBOL Version 4.21(OPEN, DISPLAY)SYS$OUTPUT:5XX 207(WRITES,FLUSH)FILE.DATWRITES/READS TEST123Testing XXX, Testing(READS,FIND)RFA(READ by RFA)Testing 123, Testing(Error handling)86(Arithmetic)1099999999 1N_I  000000000000000000  000000000000000000 P MAIN$DBLIVPVAX DIBOL V4.2 26-APR-1993 09:58 VAX DIBOL V4.2-07DIBOL/NOSTANDARD IVP_SOURCE:DBLIVP DBL$INIT85P P  DBL$$GA_FLAGS DBL$GL_FLAGSP DBL$GL_FLAGSPPP DBLIVP$    RRTSS3P4(Booleans)(CALL, RETURN)(Substrings, MD arrays)ABC (Functions)abcdefghijklmnopqrstuvwxyz11(UESL XCALLS)ZZZZZZZZXZZZZZZZZZX-59??????????(SLEEP)4599999999 1N_ 12I  000000000000000000 13(XCALL MONEY, Edit-strings)%%%%%%%%%%%.XX %12341234.990199999999 1N_ 12I  000000000000000000  000000000000000000 14(XCALL to a DIBOL subroutine)15(LOCASE)lower case16(SEND, RECV - Failed)(SEND, RECV : PART 1)DBLIVP SEND/RECV TEST MESSAGEA (SEND, RECV : PART 2)B SYS$EXAMPLES:DBLIVPDET(FOR, USING)XX:XX7000000*** ERROR # at line *** ERROR during test *** ABORTING *** 4 000000000000 000000 gf ABCDEFGHIJKLMNO 000000 00000000000000000000000000000000 12341234990 00LOWER CASE633333s+--------------------------------------------------------------------+| Starting _______________________ Installation Verification Program || Seventeen tests follow || _______________________ IVP successfully completed || IVP completed with errors || Next section may take up to two minutes || Starting SLEEP at HH:MM:SS.TT for 4.5 seconds || Finished SLEEP at HH:MM:SS.TT || Date is DD-MMM-YYYY Time is HH:MM || Job number is NNNNNNNNN Terminal number is NNNNNN || DIBOL Run-Time Library Version is "XXXXXXXXXXXXXXXXXXX" || Completed test number NN XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX || Unknown terminal: || _______________________ |P9| DQ,,Q-]FET;6;;HFT ;EgDwGQ= %H  (  &  '  &   Ё LM>=;K  :IJ ЁwN JgwENQ=  OPQ Á QRÁJӁ ҁ  : ЁwN SgVwTQ= O  gw ƁJU  : ЁwN Vgw"WQ= Xgw  : Ё ҁwN Ig3wrYQ=|RZ&Tw |  : ЁwN [gw\Q=BU  ]Y26JY^gw  : ЁwN MgwR_Q=^gl`g!w   oqs9w  : ЁwN ZgcwaQ=yp  : ЁwN bgwcQ=        fm  dfrw  : ЁwN eg%wfQ=Jgh]Jghghw Q33gw T bJZ  Egw  : ЁwN igwjQ= ҁO 6kv9#|r 7lv|  : Ёwmgw nToQ7AwRwN ^gwLpQ=/H  . Ёq~1H  0 Ё  : ЁwN rg]wsQ=tuvvgw "wuvvgw  : ЁwN xgw_yQ=  Vgw !!Vg'w ""gFw  : ЁwN zgpw{Q=#t#|gw  : ЁwN }gwL nf ~Q=  : Ё  @ ЁwF Q=Q ! `i_w gsw  gw Q<  : Ё  + ЁQ=Q<WABI~1 j w g. w  : ЁD<wN w$Q=  : Ё  4v  & Ё  2 Ё  5 Ё  8 Ёnf<  *  & Ё #@QC  &  B Ёwg   &  )  & Ё ҁz  %$ Ё  ? Ё    Ё ҁ{0^,n^QlTUT1U~RP1 }`bU~PRz@^,n^QlTUT1lU~RP1}`b  T1AU~RP1 }`bT1U~R P1 }`bU~fPS$ <tp|l|h|d<` \X<T<P<L<H<D@@pXhx(0X88Zjz *2Z, @DBLRTLLIBRTL2LIBRTL ,,,,,,,,,,,,,"*[KITS.V42-07.KIT.A]DBLIVPDET.DBL;1+,93./G 4<*-~/,0123KPWO56dʏ7rNZ|89@A GGHJ. .TITLE "IVP - Detached program startup test" .IDENT "VAX DIBOL V4.2";+,; DIBOL-83 Installation Verification Program-; To test that detached processes will start.;- RECORD MESS,A30RECORD COUNTER, I2PROC XCALL DBL$RCVID ("DBLIVPDET") CLEAR COUNTERNOMSG, INCR COUNTER SLEEP 5 IF COUNTER .GT. 12 GOTO ERROR1 RECV (MESS,NOMSG) ;Try to receive the message.1 SEND (MESS,"DBLIVP") ; Send it back to the IVP STOP ;Kill thyself...ERROR,< SEND ("YOU STINK!","DBLIVP") ; If an error, send stinkmail END"*[KITS.V42-07.KIT.A]DBLIVPDET.EXE;1+,3./G 4-~/,0123 KPWO56@xTӡ7@pZ|89@A GGHJ 0D`0205,ӡ9 DBLIVPDETVAX DIBOL V4.2,ӡ05-13  ?!@ DBLRTL_001 @!  LIBRTL2_001! LIBRTL_001P\  DBLIVPDET    -6>@AIDBLIVPDET5YOU STINK! P9/A1~ j-w@{@@T`p @DBLRTLLIBRTL2LIBRTL"*[KITS.V42-07.KIT.A]DBLIVPFUN.DBL;1+,?3./G 48-~/,0123KPWO56-)7@Z|89@A GGHJ8 .TITLE "MOD function; DIBOL IVP external function test" FUNCTION MOD A, N B, NPROC FRETURN A-((A/B)*B)END"*[KITS.V42-07.KIT.A]DBLIVPSUB.DBL;1+,D3./G 4<-~/,0123KPWO56$ 7'Z|89@A GGHJSUBROUTINE IVPSB DAT, NPROC DAT = 4 RETURNEND"*[KITS.V42-07.KIT.A]DIBOL$IVP.COM;1+,H3./G 4J-~/,0123KPWO56¼x7@Z|89@A GGHJ$!$! COPYRIGHT (c) 1987,1988 BY9$! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS.$! ALL RIGHTS RESERVED.$!H$! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIEDH$! ONLY IN ACCORDANCE OF THE TERMS OF SUCH LICENSE AND WITH THEH$! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHERH$! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANYH$! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY$! TRANSFERRED.$!H$! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICEH$! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT$! CORPORATION.$!H$! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS:$! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.$!$!'$! Installation Verification Program$! $ IVP_IT:$!J$! Check for presence of compiler ( in case only a partial installation )$!H$ IF "''F$SEARCH("SYS$SYSTEM:DIBOL85.EXE")'" .EQS. "" THEN GOTO RUN_ONLY$! $! Compile and link the programH$! Check to see if the IVP is here, or perhaps already in SYS$EXAMPLES.$!A$ IF "''F$SEARCH("DBLIVP.DBL")'" .EQS. "" THEN GOTO IVP_ELSEWHERE/$ DIBOL/NOSTANDARD DBLIVP, DBLIVPSUB, DBLIVPFUN$ DIBOL/NOSTANDARD DBLIVPDET$ GOTO LINK_IVP$IVP_ELSEWHERE:I$ DIBOL/NOSTANDARD SYS$COMMON:[SYSTEST.DIBOL]DBLIVP, DBLIVPSUB, DBLIVPFUN6$ DIBOL/NOSTANDARD SYS$COMMON:[SYSTEST.DIBOL]DBLIVPDET $LINK_IVP:<$ LINK/NOTRACEBACK/EXE=SYS$COMMON:[SYSTEST.DIBOL] DBLIVPDET4$ LINK/NOTRACEBACK/EXE=SYS$COMMON:[SYSTEST.DIBOL] -# DBLIVP, DBLIVPSUB, DBLIVPFUN, -" SYS$LIBRARY:DBLUESL/LIBRARY, - SYS$LIBRARY:DBLOSSL/LIBRARY$!$! Run the program$! $ RUN_ONLY:&$ RUN SYS$COMMON:[SYSTEST.DIBOL]DBLIVP$! $!Clean_up:2$ DELETE SYS$COMMON:[SYSTEST.DIBOL]DBLIVPDET.EXE;*-$ PURGE SYS$COMMON:[SYSTEST.DIBOL]DBLIVP.EXE$ DELETE DBLIVPDET.OBJ;$ DELETE DBLIVP.OBJ;$ DELETE DBLIVPSUB.OBJ;$ DELETE DBLIVPFUN.OBJ;$!$! End of IVP procedure.\<~ DIBOL042.AH3~/,"[KITS.V42-07.KIT.A]DIBOL$IVP.COM;1J$!+*[KITS.V42-07.KIT.A]DIBOL042.RELEASE_NOTES;1+,.T/G 4KTS-~/,0123KPWOT56~s7 Z|89GGHJx VAX DIBOL Release Notes= Operating System and Version: VAX/VMS Version 5.4 or higher7 Software Version: VAX DIBOL Version 4.2-07 digital equipment corporation maynard, massachusetts  > _____________________________________________________________> The information in this document is subject to change without> notice and should not be construed as a commitment by Digital= Equipment Corporation. Digital Equipment Corporation assumes9 no responsibility for any errors that may appear in this document.= The software described in this document is furnished under a> license and may be used or copied only in accordance with the terms of such license.8 No responsibility is assumed for the use or reliability9 of software on equipment that is not supplied by Digital3 Equipment Corporation or its affiliated companies.& Digital Equipment Corporation 1991. All Rights Reserved. Printed in U.S.A.9 The postpaid Reader's Comments forms at the end of this 8 document request your critical evaluation to assist in preparing future documentation.- ALL-IN-1 EduSystem RT1 DEC IAS ULTRIX1 DEC/CMS MASSBUS UNIBUS. DEC/MMS PDP VAX5 DECnet PDT VAXcluster. DECmate P/OS VMS- DECsystem-10 Professional VT9 DECSYSTEM-20 Q-bus Work Processor$ DECUS Rainbow! DECwriter RSTS2 DIBOL RSX DIGITAL  ContentsA ________________________________________________________________ Preface  1.0 Release Notes 1.1 New Features) 1.2 Compatibility with Previous Versions2 1.3 Software Problems Corrected Since Version 4.1 1.4 Restrictions 1.5 Documentation Amendments# 1.6 Software Components  PrefaceA ________________________________________________________________= VAX DIBOL Version 4.2 is a maintenance release of VAX DIBOL.9 It includes support for a DECWindows Compiler Interface < (DWCI), integer quadword arithmetic, an improved interface ; to the Common Data Dictionary (CDD), new LITERAL features,= updated online HELP text, and other enhancements and 2 corrections to software and documentation.; Version 5.4 (or higher) of the VAX/VMS operating system is required.> The new or revised documentation for this release consists of the following: o The online Release Notes o VAX DIBOL Installation Guide o VAX DIBOL User's Guide' o VAX DIBOL Language Reference Manual o VAX DIBOL Cover Letter 1.0 Release Notes9 These Release Notes list new features, software problems< corrected since the previous version, software restrictions> that still exist, documentation amendments, and the software , components of VAX DIBOL Version 4.2.1.1 New Features#1.1.1 DECWindows Compiler Interface; The DECWindows Compiler Interface (DWCI) is a menu driven 6 interface to the DIBOL compiler that is designed for 6 DECWindows users. It allows the user to select DIBOL 9 command qualifiers, enter DIBOL command parameters, and ; access DIBOL help using standard DECWindows menus, boxes,  and buttons. 9 DWCI is installed as part of the normal installation if 7 the operator selects to install all components. If a : partial installation is selected, DWCI will be installed as part of the compiler subset.A See the VAX DIBOL User's Guide for documentation on use of DWCI."1.1.2 Integer Quadword Arithmetic4 Prior to Version 4.2, VAX DIBOL allowed arithmetic 7 operations using integer bytes (I1 data specification 4 in DIBOL), words (I2), and longwords (I4). Use of 6 integer data types in place of zoned decimal (D data 0 type) fields have several advantages: improved 3 performance of arithmetic operations, compactness 2 of storage, and greater compatibility with other 7 VMS layered products (RDB, DECForms, etc.). However, 4 the values used in business applications are often 0 too large for longwords, disallowing their use./ VAX DIBOL V4.2 supports integer quadword (I8) 5 arithmetic to encourage use of integer variables in " place of zoned decimal variables. 1.1.3 Enhance CDD/Plus Interface7 VAX DIBOL V4.2 provides many improvements to the DIBOL6 interface to the Common Data Dictionary (CDD). These improvements include:1 o Support of the CDD feature "pieces tracking".3 o Support of the CDD feature "history recording". ' Enhance CDD/Plus Interface - continued/ o DIBOL syntax that allows specification of a2 RECORD or COMMON name which will override the  name in CDD.0 o DIBOL syntax that allows specification of a 4 redefinition indicator as part of a CDD INCLUDE.2 o DIBOL syntax that allows INCLUDEs of low level& (i.e. GROUPs and FIELDs) from CDD.- o Generation of GROUP and array GROUP data  structures.2 o Two new built-in functions, to allow access to CDD information.> See the VAX DIBOL User's Guide and Language Reference Manual : for documentation on these new DIBOL/CDD features.(1.1.4 New data division LITERAL featuresB VAX DIBOL V4.2 includes extensive changes to data divisionE LITERAL syntax. See the VAX DIBOL Language Reference Manual 4 for documentation on data division LITERALs.)1.1.5 Other Run-Time Library enhancements1 o The subroutine DBL$DEVCLT has been modified to support new device types.? o VAX DIBOL has added certain VMS errors to those which" it maps to DIBOL errors. = o VAX DIBOL has been modified to recognize "FT" and "TN" |03& terminal type designations. |03!1.1.6 Other compiler enhancements5 o When a main program is compiled with the /REFRESH 2 qualifier but without the /BIND qualifier, the 4 /REFRESH qualifier is ignored. This may decrease* task initiation time for such programs.5 o A module name is no longer required for the .MAIN 9 directive. If a name is not specified with the .MAIN 5 directive, the default name of MAIN$ will be used.7 o When an array GROUP field is used as an argument to : the %DEFINED function or .IFDEF directive, a full path 7 name specification is no longer required. A partial. path name may be used in this circumstance. ( Other compiler enhancements - continued4 o In prior versions of VAX DIBOL, if the name of a 5 field was the same as one of the DIBOL relational 5 operators (e.g. LE, EQ, etc.), the compiler would 5 sometimes incorrectly generate error messages for 4 valid DIBOL statements containing the relational 3 operator of the same name. This behavior would 3 occur when the variable name which preceded the 4 operator in the statement could be combined with 2 the operator to create a valid pathname. This 0 undesirable behavior no longer occurs if the 6 operator is separated from each of the operands in 6 the statement by at least one space. For example, 7 the IF statement in the following code segment will  now work correctly. RECORD NAME EQ, A3 RECORD GROUP EQS Y, A5 ENDGROUP PROC . . IF NAME .EQ. Y/ THEN WRITES (15, "NAME = Y ")0 ELSE WRITES (15, "NAME != Y ") . .7 As a consequence of this change, the DIBOL compiler 5 will no longer accept space(s) within a pathname: 1 i.e. space(s) placed immediately preceding or 8 immediately following a dot in a pathname will cause % the compiler to generate an error. For example, the statement group1[1] . var1 = 45 will cause the compiler to generate the following  error message:7 %DIBOL-E-ILLPATHNAME, Spaces not allowed in pathnamesB o Prior versions of the compiler would not correctly check' syntax in the following case: B CLEAR AFLD,BFLD, ; note extra comma A This has been corrected, the compiler will now give the# error "Missing variable". ( Other compiler enhancements - continuedD o In order to properly and uniformly identify the data type E of DIBOL function arguments, and to comply with the currentC draft proposed ANS standard for DIBOL, the functions %B, B %O, and %X have been changed to require an alphanumeric E compile-time expression as their argument. Note that this 9 expression may be, or contain, a named LITERAL.G These functions formerly operated upon an unquoted string of C numerals or numerals and letters. These unquoted strings? may continue to be used with the following exception:@ Using unquoted strings beginning with a letter, @ as might be the case with %X, will now cause an B error if that string is not the name of a LITERAL.D A workaround for this error is to use a alphanumericH compile-time expression in place of the unquoted string.1.1.7 SORT enhancement |02< The VAX DIBOL SORT utility (which itself uses the VAX |02> sort/merge callable interface), has been enhanced by the |027 addition or a new command. See section 1.5 for a |02( discussion of the PURGE command. |02)1.2 Compatibility with Previous Versions; Programs linked against the VAX DIBOL Version 4.2 Run-Time@ library will not execute using prior versions of that library. 7 Programs linked against prior versions of the Run-Time6 library will execute using the V4.2 Run-Time library. 11.3 Software Problems Corrected Since Version 4.11.3.1 Compiler4 The following compiler problems have been corrected2 in VAX DIBOL V4.2; the error conditions described2 no longer occur. Source programs will have to be. recompiled and relinked to effect the change.4 o A program which contained more than 32K bytes of 0 data division literals would not be compiled 1 correctly - some of the literals would not be i' output to the created object file. o4 o Data Division fields that were initialized using 6 the %XTRNL function were not correctly initialized 4 if the program containing the field was compiled using the /REFRESH qualifier.3 o If the %XTRNL function was used to initialize a s6 Data Division field and the program containing the 5 field was compiled following one or more programs e, during a multi-program compilation (e.g. 5 DIBOL PROG1,PROG2,PROG3), the field may have been  incorrectly initialized.i3 o Initializing a field in the Data Division using t9 the %XTRNL function sometimes caused warning messages .+ to be displayed when attempting to link. 6 o If a field containing an initial value appeared in 5 the Data Division following a field containing no 6 initial value and the module was compiled with the 8 /REFRESH qualifier, the field containing the initial 1 value may not have been correctly initialized. : o If a program contained a statement label that appeared : more than once in the program (a duplicate label), the 8 compilation may have failed with an access violation error. 9 o Declaring an unnamed GROUP field prior to an EXTERNAL ; FUNCTION declaration caused the compiler to incorrectly T; generate a %DIBOL-E-MULTDEFS error during compilation. : o If a DIBOL statement contained a subscripted reference 8 to a pseudo array preceded by a valid path name, the : compiler would improperly generate a %DIBOL-E-NOPSEUDO error. n6 o If a real array declaration was preceded by either 6 a field declaration without a valid type or length 5 specification, or a GROUP statement containing an : initial value, then any attempt to compile the program 1 containing these statements would fail with a i %SYSTEM-F-ACCVIO error.  f( Software Problems Corrected - continued7 o When a program contained a large number of BEGIN-ENDt4 blocks, the compiler would generate invalid code.@ o A program that contained a symbol name longer than 31 @ characters would sometimes cause the compiler to fail E with an access violation. The compiler has been corrected,yA only the first 31 characters are significant; remainingr! characters are ignored.8 o The compiler would not properly validate the size of > GROUPS and named RECORDs, COMMONs, and LITERALs and > would instead create data elements that could not be> properly accessed. The compiler now limits the size: of these data elements to 65,535 (for compiling ? "/NOSTANDARD") or 16,383 (for compiling "/STANDARD").d= o The compiler would not properly handle certain complex |03 $ expressions. As example: |03 n? if (0 .eq. ((ch.eq.'a').or.(ch .eq.'b').or.(ch.eq.'c'))) |03WB The result would be noted at runtime by improper operation. |03 D o In V4.2-00 the compiler no longer performed a certain output |03? optimization: all division literals were placed in the |03 C object file. This has been changed in V4.2-03, unreferenced |03DB data division literals which are not part of a named higher |038 structure will not be placed in the object file. |03 lA As example, the following literals, if unreferenced, would |03r% not be in the object file: |03u o# LITERAL ; note - not named |03 X, I4, 1 |03 Y, I4, 2 |03 t> The following literals would appear in the object file: |03! LITERAL INTEGER_LITERALS |03 A, I4, 1 |03 B, I4, 2 |03> o Prior to VAX DIBOL V4.2-05, the compiler would generate |05@ invalid DEBUG information for subroutines which contained |05= implied decimal argument definitions and local arrays. |05r= This problem has been corrected in VAX DIBOL V4.2-05. |05s@ o Prior to VAX DIBOL V4.2-05, a subroutine argument defined |05@ as a non-array group, but referenced as part of an array |05? specification would not compile correctly. This problem |05a1 has been corrected in VAX DIBOL V4.2-05. |05e= o Prior to VAX DIBOL V4.2-06, the compile time function |06B? %SIZE did not provide the number of digits in packed or |06hB implied packed arrays. This problem has been corrected in |06 VAX DIBOL V4.2-06. |06> o Prior to VAX DIBOL V4.2-06, using certain user defined |06> literals as the size of an array dimension would cause |06= compiler errors. This problem has been corrected in |06  VAX DIBOL V4.2-06. |06? o Prior to VAX DIBOL V4.2-07, the compiler would generate |07n= improper code for a CDD-PLUS record with a multiline |07= description. This problem has been corrected in VAX |07R DIBOL V4.2-07. |07 ( Software Problems Corrected - continued 1.3.2 Run-Time Library3 The following Run-Time Library problems have been 3 corrected in VAX DIBOL V4.2; the error conditions n5 described no longer occur. Source programs will NOTL9 have to be recompiled and relinked to effect the change.s: o Using a .NOT. operator with an alpha expression 8 produced a result of "true" if the expression < contained one or more of the following characters " and no other characters:& _ a space, (" ")% _ a zero, ("0") _ a CTRL/P1 _ the ampersand sign, ("@")hF _ an upper-case or lower-case P, ("P") or ("p").? This has been corrected. Now, using a .NOT. operator i? with an alpha expression produces a result of "true" < only if the expression contains one or more space - characters and no other characters. : o The subroutine WAIT was circumventing a problem in the @ VMS terminal driver (now corrected) by causing XON and* XOFF characters to be generated.9 o Moving an implied decimal field which had no digits toe< the right of the implied decimal point (e.g. D10.0) wouldB move a blank into the first character of the next field.; o The subroutines FLAGS and SETCTL would not work properly < together; FLAGS would reset the ^C characteristic set by B SETCTL even though this was not requested by the call toC FLAGS. (e.g. XCALL FLAGS (00000001,1) would reset the ^C  characteristic). 4 o Using a DIBOL user-defined function or a string 0 concatenation as an argument to a function or8 subroutine would cause an increase in virtual memory > allocated to the process. If the operation occurredA often enough, the process would exhaust virtual memory b and fail.t- o Using XCALL FLAGS in a detached process to 6 disable CTRL/C would cause an "access violation". / o Using XCALL FATAL would produce an error if t3 executed from a detached program running with no % command line interpreter mapped.  m( Software Problems Corrected - continued4 o A DIBOL program executing under the VAX Debugger 7 which encountered a DIBOL error within a subroutine 3 would display the source of the calling routine W0 instead of the source code of the subroutine  containing the error.4 o If SET HOST from RSX to VMS was done and a DIBOL 8 program was executed which used XCALL TTFLAGS to set 4 recognition of escape sequences, then lower-case 7 terminal input would not be converted to upper-case.w4 o When a field that was passed as an argument to a 5 subroutine was the target of a substring operation8 (e.g. FIELD (1,2) ) and a subcripting error occurred,: then the error message text would contain an incorrect $ value for the second subscript. ; o Use of the FDL option to the DIBOL OPEN statement would y7 not always work properly, some file characteristics 6 were inappropriately being displaced by use of the  FDL file. 5 o The OPEN qualifier NUMREC was not always correctlyv7 allocating space for the file, the amount calculated could be 1 block too little.s> o When the subroutine DBL$CREMBX was used to create a MAILBOX< with the "no wait" attribute, a READS sometimes would not4 return immediately, but would wait for a message.9 o Alpha to Packed Decimal assignments were not performed correctly.n; o Subscripting a Packed Decimal field would cause "invalidp subscript" errors.nB o Using DBL$TTBRDCST would sometimes cause various program/ errors, including "access violation".oC o Using DBL$TTBRDCST in a program that used VMS system |02d? services to set terminal characteristics would result in |02uA those characteristics being reset to their original state. |02dD o The WAIT subroutine (and function) would sometimes not |022 detect that terminal input was available. |02; o The CHAIN subroutine would not function if an error |03 < was detected during it's execution. It would act as |03; a NOP (no operation) instruction. Now, if an error |03.< occurs during execution of CHAIN, a DIBOL error will |03= be generated. See section 1.5 for further information |03i on the CHAIN subroutine.b> o In V4.2-00, passing expressions as subroutine arguments |03/ could cause "Access violation" errors. |03 ( Software Problems Corrected - continued> o In V4.2-00, the FILEC subroutine would cause an "access |03= violation" if called with two parameters, and a DIBOL |03m/ error 67 if called with one parameter. |03 a= o Prior to V4.2-04, an assignment of an implied decimal |04? number with a fractional portion of zero size to a field |04o/ of type alpha would not work properly. |04e r= o Prior to V4.2-04, using the round operator (##) and a |04 @ mask ("xxxx.xx") with an implied decimal expression which |04> had a zero value fractional portion would result in an |04 invalid result. d@ o Prior to V4.2-04, an assignment of a subscripted implied |046 decimal array element would not work properly. |04: e.g. X = Y[1](1,4) ; where Y is defined as D4.2 |04= o Prior to V4.2-04, an assignment of a negative integer |04 9 expression to a quadword would not work properly. |04u? o Prior to V4.2-04, when an expression within a subroutine |04t@ had as one of its operands a parameter of the subroutine |04? declared as being of data type "N", with that parameter |04 @ passed to the subroutine as an integer longword having a |04: negative value, the expression would not produce a |04 correct value. |04? o Prior to V4.2-04, when an expression within a subroutine |04u@ had as one of its operands a parameter of the subroutine |04? declared as being of data type "N", with that parameter |04t= passed to the subroutine as an integer quadword, the |04v6 expression would not produce a correct value. |04= o In V4.2-00, the FDL file option of the OPEN statement |04v> would not allow changes to the RMS FAB structures "FOP" |04> (file options), "RFM" (record format), or "RAT" (record |04= attributes. In prior versions those structures could |04n= be changed by the FDL file option. In V4.2-04, these |04U? structures may again be changed by the FDL file option, |04e= with this exception: if the open mode:submode is O:P, |04o= the "RAT" structure may not be changed by the FDL file |04 < option. Note that the RMS CREATE service may change |04: the RAT structure, based upon changes to other RMS |04 structures.A o Prior to V4.2-04, the round operations (# or ##) could not |04t. be performed on an integer quadword. |04> o Prior to V4.2-06, addition and subtraction of packed or |06= implied packed data would result in "number too long" |06= when the result exceeded 17 digits to the left of the |06F= decimal point. V4.2-06 corrects this problem, "number |06u= too long" errors will occur when the result exceeds 18 |06t digits. |06 o; o Prior to V4.2-07, a negation of a high value (>2G) |07nB expression made of integer operands would result in a fatal |07) error, "unsupported data type". |07i < o Prior to V4.2-07, the absolute value function (%ABS) |07> would return an incorrect value of a negative quadword |07 expression. |07d T> o Prior to V4.2-05, an OPEN in UPDATE mode of a relative |07= or indexed file would use the RMS attribute "deferred |07 ? write". For reasons of data integrity, this was changed |07rC in V4.2-05 - "deferred write" is no longer set by default. |07e> For V4.2-07, the operation of OPEN may be controlled by |07= a logical, "DBL$UPDATE_MODE_DEFERRED_WRITE". Setting |07o= this logical to "Y", "y", "T", "t", or "1" will result |07A= in "deferred write" being used for UPDATE mode OPENs. |07b; Only the first character of the translation of the |07u! logical is checked. |07  ( Software Problems Corrected - continued 1.3.3 DBLSORT 9 o DBLSORT would allow a sort operation to be terminated 9 by CTRL/C or CTRL/Y although the LOCKCC qualifier had r been specified. i: The problem with LOCKCC has been corrected, it will now8 correctly prevent CTRL/C or CTRL/Y termination while : either of the DBLSORT images (DBLSORT or DBLSORT2) are 8 executing. However, see the Restrictions section of ) this document for further information.4B o DBLSORT will fail with DIBOL error 7, "subscript error",? when attempting to sort an empty file using a numeric  (D data type) key. 41.4 Restrictions: The following subsections describe software restrictions , that still exist for VAX DIBOL Version 4.2.1.4.1 Compiler Restrictionsl/ The following is a list of known restrictions i- with the compiler and suggested workarounds:03 o The compiler displays the following warning when 8 attempting to initialize a field using %B if the most! significant bit is set to one:eH %DIBOL-W-INITOOLNT, Initial value too long, truncated to:7 No error follows the warning and the value stored in 9 the field is correct. The workaround is to disregard p the warning.8 o If a program contains a statement with a coding error6 which causes the compiler to generate the following message:P- %DIBOL-E-ILLEGCMD, Invalid DIBOL statement:i: The compiler may also flag valid DIBOL statements which: follow it with the same error message. This problem may; be corrected by fixing the source line that contains the error.4: o A subscripted access of a named literal which addresses7 data outside of that literal will have indeterminaten; results. Do not subscript named literals in this manner..: o If a subroutine contains an unnamed field as one of its: argument definitions, the compiler may generate invalid; error messages when the subroutine is compiled. Name all . subroutine arguments to avoid this problem.? o Using the "/NOOBJ" compiler switch can result in various |06lB spurious compiler errors. Until this problem is corrected |06+ , use "/OBJ=NL:" as a workaround. |06r l#1.4.2 Run-Time Library Restrictions / The following is a list of known restrictions 5 with the Run-Time Library and suggested workarounds: 5 o A value of zero is not given to Integer or Packed "A Decimal fields (or GROUPs) when such fields are within > RECORDs, COMMONs, or GROUPs which are cleared using A either the "name =" or "CLEAR name" syntax. If fields r@ of these data types need to be set to a zero value at = runtime, that must be done explicitly by using the r8 syntax "field_name =", "CLEAR field_name", or > "field_name = 0". Note that these fields are given 2 a correct initial value by the compiler.7 o The DIBOL SEND statement does not do a logical name t> translation for the program name (the target of the 9 message). You must use translated program namen4 specifications instead of logical names to avoid  this problem.A o The MNT subroutine requires that no space exist betweenkA name of the device on which the volume is to be mountedt< and the name of the volume which is to be mounted.7 Specify as "MUA0:BACKUP"; not "MUA0: BACKUP".1A o The FIND statement will not work with sequential files.s < o A divide operation performed when the divisor is a@ zoned numeric field containing corrupt data may result? in a fatal VMS error indicating that a divide by zerorB has been attempted. Avoid using corrupt data when doing division. C o DIBOL functions may not return an I8 field as a function sA value. If a value of this magnitude must be returned, F; a zoned decimal or packed data type must be used. ? o There is currently a restriction prohibiting expressions |07m= with more than one operand from being part of an OPEN |07p@ statement. This restriction will be removed in a future |07" version of VAX DIBOL. |07 u1.4.3 DBLSORT Restrictions/ The following is a list of known restrictions e( with DBLSORT and suggested workarounds:8 o The DBLSORT qualifier "/IDENT" makes use of the DIBOL< SEND statement to direct messages. See the above 2 restriction on the DIBOL SEND statement.6 o Even though modifications to DBLSORT have been done< to prevent inappropriate termination by CTRL/C or CTRL/Y,8 DBLSORT is two separate images: DBLSORT and DBLSORT2.6 There is an interval between the termination of one= and the activation of the other when the LOCKCC qualifier s: will have no effect. If complete prevention of program> termination is desired, disable CTRL/C and CTRL/Y from DCL.1.5 Documentation Changesr2 The following subsection describes documentation & amendments for VAX DIBOL Version 4.2. o VAX DIBOL SORTGENn p8 Appendices B and C of the User's Guide for VAX DIBOL A V4.1 described use of SORTGEN, which has been replaced rA by SORT/MERGE, and several subroutines which have been wC rendered obsolete by advances in DIBOL language syntax. AE This documentation has been removed from the documentation F for V4.2 and placed in the software component DBLREADME.LIS. o VAX DIBOL SORT  : A new command has been added to the VAX DIBOL SORT |026 utility. The syntax and rules are as follows: |02  PURGE (Optional) |02 Function |02 / PURGE is used to purge the output file. |02  Format |02 PU[RGE] |02i Rules |02i5 o The output file will be purged at the |02a( successful completion of a sort. |024 o The output file will not be purged if |02! the sort ends in error. |02n " Documentation Changes - continued x o CHAIN subroutinet= The second parameter of the CHAIN subroutine (labeled |03 > "parameter") has a length restriction of 255. A DIBOL |03@ error 31, "Argument specified with wrong size" will occur |03= if CHAIN is executed with "parameter" longer than 255. |03s# o SUPPORTED CDD DATA TYPES |03d u? The CDD data type "segmented string" is supported by VAX |03C< DIBOL to the extent that no compiler warning will be |03B generated when CDD elements of this data type are compiled. |03< See the CDD/Plus manual set for a description of the |03& segmented string data type. |03 i# o INCORRECT ERROR MNEMONIC |03  m= The Language Reference Manual foriz~ DIBOL042.A~/,+[KITS.V42-07.KIT.A]DIBOL042.RELEASE_NOTES;1KT.= VAX DIBOL and ANSI |03o: DIBOL both list the error mnemonic "$ERR_TIMEOUT". |039 This is incorrect, the mnemonic is "$ERR_TIMOUT". |03m4 o DATA DIVISION LITERALS AND %XTRNL FUNCTION |03 ; The value of a data division LITERAL (not EXTERNAL |034? LITERAL) must itself be a compile time expression. For |03 ; this reason, the %XTRNL function may not be used to |03t6 provide the value of a data division LITERAL. |03 o %RFA FUNCTION |03 i= The documentation for the %RFA function states that it |03p> accepts no arguments. This is not correct; it requires |03@ one argument, the channel number for which an RFA (record |03* file address) is to be returned. |03( o DATA DIVISION LITERAL overlays |05 N: The documentation regarding data division overlays |05< states that unnamed LITERALs may be overlayed. This |05= is not correct; only named LITERALs may be overlayed. |05; Thus the following example will generate a compiler |05u error (Overlay error):a LITERALf X, I2 LITERAL, X Y, A2 i o> The following is an example of a valid LITERAL overlay: |05 n LITERAL FRED X, I2 LITERAL, X e Y, A2 l1.6 Software Components|C The files listed in Table 1 are distributed as part of VAX C DIBOL Version 4.2 and are included in a full installation. eE You can save space on your system disk by removing any files E which are not used in your system environment. The DIBOL RTL LC (DBLRTL.EXE) is required to execute any DIBOL program, and aB the Message Manager utility is required for SEND/RECV and D for XCALL WAIT. The Language-Sensitive Editor (LSE) support A files (DIBOL.ENV and LSEUPDATE_ENV.TPU) are required for iF installation. When the installation procedure is successfully 9 completed, these files are automatically deleted.e o Table 1l; Directory Filename DescriptionoH SYS$SYSTEM DIBOL85.EXE VAX DIBOL Compiler imageH DBLISMUTL.EXE DIBOL ISAM utility imageE DBLMSGMGR.EXE DIBOL Message Manager = utility image B DBLSORT.EXE DIBOL Sort utilityE (command phase) imagenH DBLSORT2.EXE DIBOL Sort utility (sortC /merge phase) imageAE DBLSORTG.EXE DIBOL SORTG/M utilityE (command phase) imagePD DBLSTATUS.EXE DIBOL Status utility5 imagenD DBLMNUGEN.EXE DIBOL Menu Generator= utility imageOF SYS$LIBRARY DBLRTL.EXE DIBOL Run-Time Library? shareable imageiD DBLSORTM.DBL DIBOL SORTG/M sourceH DBLRTL.OPT DIBOL RTL linker options4 fileB DBLOSSL.OLB DIBOL OSSL libraryB DBLUESL.OLB DIBOL UESL libraryB DBLTEXT.TLB DIBOL Text libraryK DBLSTARLET.TLB DIBOL STARLET Text library RJ of SYS$LIBRARY:STARLET.MLB r o Table 1 (continued) ; Directory Filename DescriptionnE SYS$STARTUP DBLSTRTUP.COM DIBOL Message ManagerG utility startup command 9 procedureoC SYS$HELP DIBOL.HLB Extended DIBOL HelpA7 libraryA DIBOL$DWCI.HLB Help library for a: DIBOL DWCIA DIBOL042.RELEASE_ Release Notes foriE NOTES VAX DIBOL Version 4.2-H SYS$MESSAGE DIB85MSG.EXE VAX DIBOL compiler error< message fileD DBLRTLMSG.EXE DBLRTL and utilitiesB error message fileH DIB85MSG.MSG Source file for compiler> error messages? DBLISMMSG.MSG Source file foroB DBLISMUTL messages? DBLMGNMSG.MSG Source file foraB DBLMNUGEN messages? DBLMGRMSG.MSG Source file forIB DBLMSGMGR messagesD DBLMNUMSG.MSG Source file for MENUC subroutine messagesdF DBLRTLMSG.MSG Source file for DBLRTL8 messagesG DBLSRTMSG.MSG Source file for DBLSORT.8 messages? DBLSTSMSG.MSG Source file fortB DBLSTATUS messages " o Table 1 (continued)P; Directory Filename DescriptionG> SYS$UPDATE DBLREADME.LIS Miscellaneous ; informationeE DBLTNMBRS.COM Terminal number tablee@ update procedure SYS$EXAMPLESC DBLDBGINI.COM Sample VMS SymboliccG Debugger initializationd4 file@ DSMNT.DBL Sample VAX DIBOL8 MNT.DBL programs" SORT.DBL@ DIBOL85.CLD DIBOL-85 CommandD Language Definitions4 fileI DBLIVPDET.EXE Installation Verification G Program executable file # SYS$SYSROOT:[SYSTEST] @ DIBOL$IVP.COM Command file forI Installation Verificationr9 Procedureh) SYS$SYSROOT:[SYSTEST.DIBOL]OC DBLIVP.DBL Sample Installation.F DBLIVPSUB.DBL Verification Procedure8 DBLIVPFUN.DBL programs5 DBLIVPDET.DBL .w C Table 2 lists the contents of the seven savesets (A throughiE G) that make up VAX DIBOL V4.2. When you are installing the .F VAX DIBOL kit, you can choose a full installation (savesets A = through G) or select from savesets C through G. All u/ installations contain savesets A and B.s o Table 2 0 Saveset A Installation- KITINSTAL.COM Temporarym$ DIBOL042.RELEASE_NOTES DIBOL$IVP.COMr. DBLIVP.DBL IVP source% DBLIVPSUB.DBL .L% DBLIVPFUN.DBL .a% DBLIVPDET.DBL .t1 DBLIVPDET.EXE Temporary IVPs% DBLIVP.EXE .e4 Saveset B Run-Time_Library3 DBLRTL.EXE Run-time system7 DBLRTLMSG.EXE Error message filesd0 DBLOSSL.OLB OSSL library0 DBLUESL.OLB UESL library0 DBLREADME.LIS Read me textC DBLSTRTUP.COM Message Manager utility startupsC DBLTNMBRS.COM Change default terminal numbersv9 DIBOL.HLB Extended help libraryi3 DBLMSGMGR.EXE Message Manager   o Table 2 (continued)p, Saveset C Compiler< DIBOL85.CLD Command line description2 DIBOL85.EXE DIBOL compiler, DIBOLCMD.HLP DCL help5 DIBOL$DWCI.HLB Help library for . DIBOL DWCI; DIB85MSG.EXE Compiler error messages 5 DBLRTL.OPT Link options file 0 DBLTEXT.TLB Text library= DBLDBGINI.COM DEBUG initialization files8 DBLSTARLET.TLB STARLET text library' Saveset D LSE > DIBOL.ENV Environment file-temporaryD LSEUPDATE_ENV.TPU Used to insert environment file-- temporary2- Saveset E Utilities( DBLSORT.EXE SORT( DBLSORT2.EXE SORT( DBLSORTG.EXE SORT( DBLSORTM.EXE SORT0 DBLISMUTL.EXE ISAM utilityB DBLSTATUS.EXE Message Manager status utility  o Table 2 (continued) ( Saveset F Menu2 DBLMNUGEN.EXE Menu Generator? Saveset G Message source and examplescC DBLRTLMSG.MSG Source file for DBLRTL messagesTF DBLISMMSG.MSG Source file for DBLISMUTL messagesF DBLMGNMSG.MSG Source file for DBLMNUGEN messagesF DBLMGRMSG.MSG Source file for DBLMSGMGR messagesC DBLMNUMSG.MSG Source file for MENU subroutine, messagesD DBLSRTMSG.MSG Source file for DBLSORT messagesF DBLSTSMSG.MSG Source file for DBLSTATUS messagesE DIB85MSG.MSG Source file for COMPILER messagesT? DSMNT.DBL Source for DSMNT subroutinei= MNT.DBL Source for MNT subroutined; SORT.DBL Source for SORT utilityrD If you install Saveset G, the DBLIVP*.DBL from SavesetB A are moved to the SYS$EXAMPLES directory and saved.B Otherwise, the files are automatically deleted after installation."*[KITS.V42-07.KIT.A]KITINSTAL.COM;1+,3.-/G 4`-+-~/,0123KPWO,56ni7 I[|89@A GGHJ$!,$! COPYRIGHT (c) 1987,1988,1989,1990,1991 BY9$! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS.$! ALL RIGHTS RESERVED.$!H$! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIEDH$! ONLY IN ACCORDANCE OF THE TERMS OF SUCH LICENSE AND WITH THEH$! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHERH$! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANYH$! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY$! TRANSFERRED.$!H$! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICEH$! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT$! CORPORATION.$!H$! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS:$! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.$!$!C$! Command procedure to install VAX-11 DIBOL V4 using the VMSINSTAL$! installation procedure.$!$!$! 9-January-1983 JV T2.2$! 20-March-1984 JV T2.2-FT2$! 16-July-1984 JV V2.2 (SDC)'$! 24-January-1985 JV T2.3 (Field Test)$! 12-March-1985 JV V2.3 (SDC)%$! 24-Jan-1986 LWM T3.0 (Field Test)'$! 26-Feb-1986 LWM Allow more savesets$! 09-May-1986 LWM V3.0 copy%$! 05-Jan-1987 LMR T3.1 (Field Test)%$! 25-Jun-1987 LMR T4.0 (Field Test)8$! 09-Sep-1987 EBF Use PROVIDE_IMAGE for DBLIVPDET.EXE.1$! 22-Oct-1987 EBF Add questions for DBLSTARLET.,$! 27-Jan-1988 EBF Add new VMS V5.0 stuff -3$! Done - HELP messages for DBLSTARLET questions.*$! Done - IVP goes into [SYSTEST.DIBOL].1$! Done - Ask if bundled routines be installed.P$! 23-Oct-1989 PJH T4.1 (Field Test) Added changes for LMF support.@$! Done - Only except VMS V5.0+ as validI$! Done - Add question to ask for valid DIBOL PAK@$! Done - Check for a valid VAX LSE PAK.G$! Done - Make the IVP run a seperate .COM file7$! 12-Feb-1991 PJH Add Installation support for DWCI.4$! 22-Jun-1991 PJH T4.2-02 (Field Test)M$! 19-SEP-1991 BWF T4.2-03 corrected problems, removed some code$!F$! Please note that VAX-11 DIBOL V4 contains the following facilities:$!4$! ---------- Facility ---------- - Name - - Code -*$! The DIBOL Run-Time Library DBL 42($! The DIBOL-85 compiler DIBOL 1381$! The DIBOL utilities & debugger DBLUTL 220$!J$! For consistency purposes, the prefix DIBOL will be used for all logical2$! names and global symbols within this procedure.$!$! $!C$! Get all this started. Set controls and check P1 for what to do.$!*$ ON CONTROL_Y THEN VMI$CALLBACK CONTROL_Y"$ ON WARNING THEN GOTO EXIT_STATUS$!.$ IF P1 .EQS. "VMI$_INSTALL" THEN GOTO INSTALL'$ IF P1 .EQS. "VMI$_IVP" THEN GOTO IVP-$ IF P1 .EQS. "COMPHELP" THEN GOTO COMPHELP+$ IF P1 .EQS. "LSEHELP" THEN GOTO LSEHELP-$ IF P1 .EQS. "UTILHELP" THEN GOTO UTILHELP-$ IF P1 .EQS. "MENUHELP" THEN GOTO MENUHELP+$ IF P1 .EQS. "MSGHELP" THEN GOTO MSGHELP .$ IF P1 .EQS. "XUTILHELP" THEN GOTO XUTILHELP+$ IF P1 .EQS. "TLBHELP" THEN GOTO TLBHELP-$ IF P1 .EQS. "TLBEHELP" THEN GOTO TLBEHELP0$ IF P1 .EQS. "BUNDLEHELP" THEN GOTO BUNDLEHELP$!;$! If unsupported parameter, exit with "unsupported" status$ GOTO EXIT_UNSUPPORTED$!$! $!$! Kit installation$! $ INSTALL: $ DEBUG = P2$ SAY = "WRITE SYS$OUTPUT"$!$!=$ MINBLOCKS = 6500 ! # blocks minimum for full installation8$ SAFEBLOCKS = 7500 ! # blocks for "SAFE" installation;$ AWDBLOCKS = 4000 ! # blocks needed on an AWD if choosen$!=$! ERRVMS = "This kit requires Version 5.2 or later of VMS."$!C$ MSG1 = "This kit requires ''MINBLOCKS' blocks for installation."$!9$ WHOLEMSG = "Do you want the entire DIBOL kit installed"'$ COMPMSG = "Do you want the compiler"%$ LSEMSG = "Do you want LSE support"($ UTILMSG = "Do you want the utilities":$ MENUMSG = "Do you want the menu compiler and utilities"8$ MSGMSG = "Do you want the message files and examples"1$ XUTILMSG = "Please enter choice for utilities "-$ SORTMSG = "Do you want the SORT utilities"+$ ISAMMSG = "Do you want the ISAM utility"=$ STATMSG = "Do you want the message-manager status utility"3$ TLBMSG = "Do you want to install DBLSTARLET.TLB"7$ TLBMSGE = "Do you want to decompress DBLSTARLET.TLB"R$ BUNDLEMSG = "Are you sure that you want to supercede the bundled DIBOL routines"$!$!$ TYPE SYS$INPUT VAX DIBOL Installation$!9$! Check VMS version. Install only on VMS V5.2 systems.K$! On 5.x systems, LMF check is needed to make sure DIBOL is allowed to run$! on this system.$!*$ IF DEBUG THEN SAY "Checking VMS version"4$ VMI$CALLBACK CHECK_VMS_VERSION DIBOL$VMS_OK 5.2 ""%$ IF DIBOL$VMS_OK THEN GOTO CHECK_LMF'$ VMI$CALLBACK MESSAGE E BADVMS 'ERRVMS$ GOTO EXIT_FAILURE $CHECK_LMF:$!E$ VMI$CALLBACK CONFIRM_LICENSE DIBOL$PAK_OK DIBOL DEC 4.2 01-MAY-1991$$ IF DIBOL$PAK_OK THEN GOTO CHECK_OK$ TYPE SYS$INPUT@ VAX DIBOL requires a license to run. The IVP will NOT ? run after this installation. Please run the IVP after? you have installed and loaded the VAX DIBOL license by ' typing @SYS$TEST:DIBOL$IVP.COM. Installation continuing...$!$ VMI$CALLBACK SET IVP NO$! $CHECK_OK:$![$! NOTE: VMSINSTAL.COM moves the release notes for us, we don't need to do it anymore$!*$! Check for enough free blocks to install$!.$ IF DEBUG THEN SAY "Checking for free blocks"V$ VMI$CALLBACK CHECK_NET_UTILIZATION DIBOL$BLOCKS_OK 'SAFEBLOCKS 'MINBLOCKS 'AWDBLOCKSK$ IF .NOT. DIBOL$BLOCKS_OK THEN VMI$CALLBACK MESSAGE E NOSPACE "''MSG1'"4$ IF .NOT. DIBOL$BLOCKS_OK THEN GOTO EXIT_FAILURE;$ IF DEBUG THEN SAY "Checking for free blocks - SET SAFETY"1$ VMI$CALLBACK SET SAFETY CONDITIONAL 'SAFEBLOCKS$!$! $!$! Asking-mania :%$! Ask if they want the files purged $! Ask if they want the IVP run$!$ VMI$CALLBACK SET PURGE ASK$!.$ IF .NOT. DIBOL$PAK_OK THEN GOTO PAST_IVP_ASK$ VMI$CALLBACK SET4 IVP ASK$!$ PAST_IVP_ASK:$! ;$! okay now, see just how much of the kit the folks want!!$! 7$ DIBOL$VMS_VERSION = F$ELEMENT (1,",",VMI$VMS_VERSION)$ WANTBNDL = 10$ WANTTLBE = 0 ! default to no1$ VMI$CALLBACK ASK WHOLE "''WHOLEMSG'" "YES" B,D!$ IF .NOT. WHOLE THEN GOTO ASKINGM$ VMI$CALLBACK ASK TLBE "''TLBMSGE'" "YES" B "@VMI$KWD:KITINSTAL TLBEHELP"$!$! $ COMP = 1 $ LSE = 1 $ UTIL = 1 $ MENU = 1 $ MSG = 1$ WANTSORT = 1$ WANTISAM = 1$ WANTSTAT = 1($ WANTTLB = 1 ! Wants DBLSTARLET.TLB.2$ WANTTLBE = 1 ! Wants DBLSTARLET.TLB expanded.A$ IF .NOT. TLBE THEN WANTTLBE = 0 ! Don't expand DBLSTARLET.TLB.$ GOTO OVERASKING$ASKING:G$ VMI$CALLBACK ASK TLB "''TLBMSG'" "YES" B "@VMI$KWD:KITINSTAL TLBHELP"$ IF .NOT. TLB THEN WANTTLB = 0$ IF .NOT. TLB THEN GOTO ASK2 $ WANTTLB = 1J$ VMI$CALLBACK ASK TLBE "''TLBMSGE'" "YES" B "@VMI$KWD:KITINSTAL TLBEHELP"$ WANTTLBE = 1!$ IF .NOT. TLBE THEN WANTTLBE = 0$ASK2:J$ VMI$CALLBACK ASK COMP "''COMPMSG'" "YES" B "@VMI$KWD:KITINSTAL COMPHELP"G$ VMI$CALLBACK ASK LSE "''LSEMSG'" "NO" B "@VMI$KWD:KITINSTAL LSEHELP"J$ VMI$CALLBACK ASK UTIL "''UTILMSG'" "NO" B "@VMI$KWD:KITINSTAL UTILHELP""$ IF .NOT. UTIL THEN GOTO ASK_MENUN$ VMI$CALLBACK ASK WHATUTIL "''XUTILMSG'" 1 H,I "@VMI$KWD:KITINSTAL XUTILHELP"($ IF WHATUTIL .EQ. 1 THEN GOTO SET_UTILS($ IF WHATUTIL .EQ. 3 THEN GOTO ASK_UTILS$! $! No utils.$! $ UTIL = 0$ GOTO ASK_MENU$SET_UTILS: WANTSORT = 1$ WANTISAM = 1$ WANTSTAT = 1$ GOTO ASK_MENU $ASK_UTILS:0$ VMI$CALLBACK ASK WANTSORT "''SORTMSG'" "NO" B 0$ VMI$CALLBACK ASK WANTISAM "''ISAMMSG'" "NO" B 0$ VMI$CALLBACK ASK WANTSTAT "''STATMSG'" "NO" B $ASK_MENU:J$ VMI$CALLBACK ASK MENU "''MENUMSG'" "NO" B "@VMI$KWD:KITINSTAL MENUHELP"G$ VMI$CALLBACK ASK MSG "''MSGMSG'" "NO" B "@VMI$KWD:KITINSTAL MSGHELP"$! $OVERASKING:$ TYPE SYS$INPUT1 +----------------------------------------------+1 | This is the end of the questions required to |1 | install VAX DIBOL. |1 | After all of the files have been loaded from |1 | the media, installation will complete in |1 | 10-25 minutes. |1 +----------------------------------------------+$$!$! $!5$! Now that everything is set up, do the installation$!+$! Stop existing message manager if running>$! (NOTE - this is so that DBLMSGMGR.EXE and DBLRTL.EXE can be?$! purged when the time comes. If the MSGMGR is running, we'll&$! get file locked errors on the PURGE$!8$ IF DEBUG THEN SAY "Attempting to stop message manager"V$ VMI$CALLBACK FIND_FILE DIBOL$STARTUP DBLSTRTUP.COM VMI$ROOT:[SYSMGR] S DIBOL$LOCATED7$ IF DIBOL$LOCATED .EQS. "S" THEN $ @DIBOL$STARTUP KILL$!I$! Restore saveset B first. This contains DBLRTL, DBLMSGMGR, DBLSTRTUP,<$! HELP, README, DBLTNMBR, DBLOSSL, DBLUESL, DBLRTLMSG.EXE.($! Set up move for all saveset B files.$! $ VMI$CALLBACK RESTORE_SAVESET B$!&$! Run-Time DBLRTL.EXE ==> [SYSLIB]$! DBLRTL.OPT ==> [SYSLIB]$! DBLUESL.OLB ==> [SYSLIB]$! DBLOSSL.OLB ==> [SYSLIB]$! DBLTNMBRS.COM ==> [SYSUPD]C$!$ IF DEBUG THEN SAY "Creating temporary shareable image library"<$!$ LIBR/CREATE/SHARE VMI$KWD:D85IMAGELIB VMI$KWD:D85RTL.EXE$!D$! Determine if we want to supercede the current DBLRTL by using a C$! COMPARE_IMAGES callback. If the kit has the latest DBLRTL.EXE,$! then supercede the old one.$!2$ RENAME VMI$KWD:DBLRTL.EXE VMI$KWD:DBLRTL_NEW.EXEA$ IF DEBUG THEN SAY "Comparing DBLRTL on kit to one on system..."M$ VMI$CALLBACK COMPARE_IMAGE DIBOL$CHECK_LATEST VMI$ROOT:[SYSLIB]DBLRTL.EXE -E VMI$KWD:DBLRTL_NEW.EXE2$ RENAME VMI$KWD:DBLRTL_NEW.EXE VMI$KWD:DBLRTL.EXE$ WANTBNDL = 1E$ IF DIBOL$CHECK_LATEST .EQ. VMI$K_KIT_VER_NEWER THEN GOTO GET_DBLRTLD$ IF DIBOL$CHECK_LATEST .EQ. VMI$K_KIT_VER_SAME THEN GOTO GET_DBLRTL$!?$ IF DEBUG THEN SAY "The kit version of the DBLRTL is older..."$ TYPE SYS$INPUT= +---------------------------------------------------+D= | NOTE |R= | The DBLRTL.EXE on the installation kit was found |E= | to be older than the one already on the system. |E= | If you answer yes to the following question, you |B= | will supercede the following newer files on the |H= | system with the older ones from the kit: |!= | DBLRTL.EXE, DBLRTLMSG.EXE, | = | DBLMSGMGR.EXE, DBLSTRTUP.COM |R= +---------------------------------------------------+ $! $ WANTBNDL = 0V$ VMI$CALLBACK ASK BNDL "''BUNDLEMSG'" "NO" B "@VMI$KWD:KITINSTAL BUNDLEHELP"!$ IF BNDL THEN WANTBNDL = 1W$! $ GET_DBLRTL:IZ$ IF DEBUG THEN SAY "If WANTBNDL = 0 then the kit DBLRTL is older, WANTBNDL = ''WANTBNDL'"1$ IF DEBUG THEN SAY "Providing RTL and libraries"!G$!$ VMI$CALLBACK PROVIDE_FILE DIBOL$ D85IMAGELIB.OLB VMI$ROOT:[SYSLIB] 8$!$ IF WANTBNDL THEN -A VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLRTL.EXE VMI$ROOT:[SYSLIB] I!$!@$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLUESL.OLB VMI$ROOT:[SYSLIB]@$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLOSSL.OLB VMI$ROOT:[SYSLIB]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLTNMBRS.COM VMI$ROOT:[SYSUPD]$! B$$! provide the DBLIVPDET.EXE too!!!$! 2O$ VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLIVPDET.EXE VMI$ROOT:[SYSHLP.EXAMPLES] C5$!*$! Messages DBLRTLMSG.EXE ==> [SYSMSG]$!$ IF WANTBNDL THEN -B VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLRTLMSG.EXE VMI$ROOT:[SYSMSG]$! e$! Help$! !$$ IF DEBUG THEN SAY "Providing HELP">$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL.HLB VMI$ROOT:[SYSHLP]$!($! MSGMGR DBLMSGMGR.EXE ==> [SYSEXE]$! DBLSTRTUP.COM ==> [SYSMGR]d$! s;$ IF DEBUG THEN SAY "Providing message manager and startup" $!$ IF WANTBNDL THEN -B VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLMSGMGR.EXE VMI$ROOT:[SYSEXE]$!$ IF WANTBNDL THEN -F VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLSTRTUP.COM VMI$ROOT:[SYS$STARTUP]$!($ VMI$CALLBACK SET STARTUP DBLSTRTUP.COM$!,$! README file DBLREADME.LIS ==> [SYSUPD]$! oB$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLREADME.LIS VMI$ROOT:[SYSUPD]$! f$! $! Compiler&$! First, check if compilers requested$! $ IF .NOT. COMP THEN GOTO DO_LSE$!$!G$! Restore saveset C. Includes files DIBOL85, DIBOL85X, DIBOL85.CLD, sH$! DIBOL85CMD, DBLRTL.OPT, DBLTEXT, DBLSTARLET, DIB85MSG, DBLDBGINI.COM,N$! as well as DWCI components (DIBOL$DWCI.*, DIBOL$SET_LIBRARY, DIBOL$PROFILE)$$! Set up to move files in saveset c$! $ VMI$CALLBACK RESTORE_SAVESET C$!($! Compiler DIBOL85.EXE ==> [SYSEXE]$!($ IF DEBUG THEN SAY "Providing compiler"A$ VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DIBOL85.EXE VMI$ROOT:[SYSEXE] $!$! Set up DIBOL DCL command$!+$ IF DEBUG THEN SAY "Providing DCL command"F.$ VMI$CALLBACK PROVIDE_DCL_COMMAND DIBOL85.CLD$!$! Set up DIBOL HelpO$!1$ IF DEBUG THEN SAY "Providing command line HELP"L,$ VMI$CALLBACK PROVIDE_DCL_HELP DIBOLCMD.HLP$!.$! TEXT libraries DBLTEXT.TLB ==> [SYSLIB]!$! DBLSTARLET.TLB ==> [SYSLIB] ;$! Also, check to see if DBLSTARLET should be decompressed.F$!.$ IF DEBUG THEN SAY "Providing text libraries"@$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLTEXT.TLB VMI$ROOT:[SYSLIB]$!($ IF .NOT. WANTTLBE THEN GOTO GET_DIBTLBR$ LIBR/COMPRESS/DATA=EXPAND/TEXT/OUT=VMI$KWD:DBLSTARLET.TLB VMI$KWD:DBLSTARLET.TLB$ PURGE VMI$KWD:DBLSTARLET.TLB$! $GET_DIBTLB:'$ IF .NOT. WANTTLB THEN GOTO GET_D85MSGrC$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLSTARLET.TLB VMI$ROOT:[SYSLIB]D$! $GET_D85MSG:$!.$! MESSAGE image DIB85MSG.EXE ==> [SYSMSG]$!B$ VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DIB85MSG.EXE VMI$ROOT:[SYSMSG]$!7$! CLD file, OPT file and DEBUG initialization filek$!I$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL85.CLD VMI$ROOT:[SYSHLP.EXAMPLES]aK$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLDBGINI.COM VMI$ROOT:[SYSHLP.EXAMPLES]y?$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLRTL.OPT VMI$ROOT:[SYSLIB]t$! $GET_DWCI:$! $! Get the DIBOL DWCI help file$!C$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$DWCI.HLB VMI$ROOT:[SYSHLP]i$!5$! Put the remaining DWCI components into VUE$LIBRARYS$!N$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$DWCI.EXE VMI$ROOT:[VUE$LIBRARY.USER]N$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$DWCI.UID VMI$ROOT:[VUE$LIBRARY.USER]T$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$SET_LIBRARY.COM VMI$ROOT:[VUE$LIBRARY.USER]T$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$PROFILE.VUE$DAT VMI$ROOT:[VUE$LIBRARY.USER]$! $! l$! Check for LSEs$!$DO_LSE: $ IF .NOT. LSE THEN GOTO DO_UTIL`$ VMI$CALLBACK FIND_FILE DIBOL$LSE LSE$SYSTEM_ENVIRONMENT.ENV VMI$ROOT:[SYSLIB] S DIBOL$LOCATED-$ IF DIBOL$LOCATED .NES. "S" THEN GOTO NO_LSEL=$ VMI$CALLBACK CHECK_LICENSE LSEPAK LSE DEC 2.0 01-APR-1987A*$ IF .NOT. LSEPAK THEN GOTO NO_LSE_LICENSE$!=$! Restore saveset D. Includes DIBOL.ENV, LSEUPDATE_ENV.TPUP$! $ VMI$CALLBACK RESTORE_SAVESET D$!9$! suppress TPU number of records read from file messageA$!;$ SET MESSAGE/NOTEXT/NOFACILITY/NOIDENTIFICATION/NOSEVERITYu?$ LSEDIT/NODISPLAY/NOSYSTEM_ENVIRONMENT/ENVIRONMENT=( DIBOL ) -o1 /NOSECTION/COMMAND=(VMI$KWD:LSEUPDATE_ENV.TPU)y3$ SET MESSAGE/TEXT/FACILITY/IDENTIFICATION/SEVERITYa$!8$! Put the new system environment file in SYS$LIBRARY. $!C$ VMI$CALLBACK PROVIDE_FILE DIBOL$LSE LSE$SYSTEM_ENVIRONMENT.ENV -u VMI$ROOT:[SYSLIB]i$ GOTO DO_UTIL $ NO_LSE:r$ TYPE SYS$INPUTJ "VAX DIBOL is not being installed with VAX Language-SensitiveK Editor support because the Editor is not installed on your K system. If you want the VAX Language-Sensitive Editor support ' you must do the following:T: 1. Install the VAX Language-Sensitive Editor& 2. Re-install VAX DIBOL"$ GOTO DO_UTIL$ NO_LSE_LICENSE:$ TYPE SYS$INPUTC "VAX DIBOL is not being installed with VAX support forrE the Language-Sensitive Editor because the Editor's GC license is not installed and loaded on your system. If!E you want the VAX Language-Sensitive Editor support you # must do the following:"C 1. Install and load the VAX Language-Sensitive Editord license& 2. Re-install VAX DIBOL"$! $! $! UtilitiesK$! $DO_UTIL:L!$ IF .NOT. UTIL THEN GOTO DO_MENU )$ IF DEBUG THEN SAY "Providing utilities"$!?$! Restore saveset E. Includes DBLISMUTL, DBLSORTx, DBLSTATUSW$! $ VMI$CALLBACK RESTORE_SAVESET E$!($! ISMUTL DBLISMUTL.EXE ==> [SYSEXE]$!T$ IF WANTISAM THEN VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLISMUTL.EXE VMI$ROOT:[SYSEXE]$!$$! SORT DBLSORT.EXE ==> [SYSEXE]$! DBLSORT2.EXE ==> [SYSEXE]R$ IF WANTSORT THEN VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLSORT.EXE VMI$ROOT:[SYSEXE]S$ IF WANTSORT THEN VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLSORT2.EXE VMI$ROOT:[SYSEXE]T$!($! SORTGEN DBLSORTG.EXE ==> [SYSEXE]$! DBLSORTM.DBL ==> [SYSLIB]S$ IF WANTSORT THEN VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLSORTG.EXE VMI$ROOT:[SYSEXE]VR$ IF WANTSORT THEN VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLSORTM.DBL VMI$ROOT:[SYSLIB]$!($! STATUS DBLSTATUS.EXE ==> [SYSEXE]$!T$ IF WANTSTAT THEN VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLSTATUS.EXE VMI$ROOT:[SYSEXE]`$ IF WANTSTAT THEN VMI$CALLBACK SECURE_FILE DIBOL$ [1,4] SYSTEM:RWED,OWNER:RWED,GROUP:RWED,WORLD$! O$! $DO_MENU:F $ IF .NOT. MENU THEN GOTO DO_MSG$!)$! MENUGEN DBLMNUGEN.EXE ==> [SYSEXE] 3$! Restore saveset F. Includes DBLMNUGEN.EXE only. $! $ VMI$CALLBACK RESTORE_SAVESET FC$ VMI$CALLBACK PROVIDE_IMAGE DIBOL$ DBLMNUGEN.EXE VMI$ROOT:[SYSEXE] $DO_MSG:%$ IF .NOT. MSG THEN GOTO EXIT_SUCCESS $! $! MessagesN$! sources ==> [SYSMSG]B$! Restore saveset G. Includes all .MSG files, MNT.DBL, DSMNT.DBLF$! IVP programs are in saveset A, but they won't be saved unless here.$! $ VMI$CALLBACK RESTORE_SAVESET G$!A$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DIB85MSG.MSG VMI$ROOT:[SYSMSG]-B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLRTLMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLISMMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLMGRMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLSRTMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLSTSMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLMGNMSG.MSG VMI$ROOT:[SYSMSG]B$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLMNUMSG.MSG VMI$ROOT:[SYSMSG]$!8$! Examples programs & CLD file ==> [SYSHLP.EXAMPLES]$!F$ VMI$CALLBACK PROVIDE_FILE DIBOL$ MNT.DBL VMI$ROOT:[SYSHLP.EXAMPLES]G$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DSMNT.DBL VMI$ROOT:[SYSHLP.EXAMPLES]KF$ VMI$CALLBACK PROVIDE_FILE DIBOL$ SORT.DBL VMI$ROOT:[SYSHLP.EXAMPLES]$!$! IVP programsL$! Check for [SYSTEST.DIBOL]. If it doesn't exist, create it. Then put all$! the IVP programs in it.$!=$ VMI$CALLBACK FIND_FILE DIBOL$ VMI$ROOT:[SYSTEST]DIBOL.DIR -X "" S DIBOL$TESTDIR#$ IF DIBOL$TESTDIR .NES. "S" THEN -L3 VMI$CALLBACK CREATE_DIRECTORY SYSTEM SYSTEST.DIBOL $!G$ m/~ DIBOL042.A3~/,"[KITS.V42-07.KIT.A]KITINSTAL.COM;1`- 'VMI$CALLBACK PROVIDE_FILE DIBOL$ DIBOL$IVP.COM VMI$ROOT:[SYSTEST] C !J$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLIVP.DBL VMI$ROOT:[SYSTEST.DIBOL] C L$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLIVPSUB.DBL VMI$ROOT:[SYSTEST.DIBOL] CL$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLIVPFUN.DBL VMI$ROOT:[SYSTEST.DIBOL] CL$ VMI$CALLBACK PROVIDE_FILE DIBOL$ DBLIVPDET.DBL VMI$ROOT:[SYSTEST.DIBOL] C$!$ DEASSIGN DIBOL$E$!$ GOTO EXIT_SUCCESSh$! $!%$! Installation Verification ProgramW$!$ IVP:$!$ @SYS$TEST:DIBOL$IVP.COMa#$ IF $STATUS THEN GOTO EXIT_SUCCESS.$ GOTO EXIT_FAILUREM$!$! E$! HELP proceduresM$!$BUNDLEHELP: TYPE SYS$INPUT 1 There are 4 modules that are provided with VMS :L DBLRTL.EXE DBLMSGMGR.EXE DBLSTRTUP.COM DBLRTLMSG.EXEL0 If you install these modules from this kit, you0 will supercede the existing modules provided on the VMS kit.S$GOTO EXIT_SUCCESS$TLBHELP: TYPE SYS$INPUT- DBLSTARLET is a text library containing manyB$ VMS system symbols in DIBOL syntax.$ GOTO EXIT_SUCCESS-$TLBEHELP: TYPE SYS$INPUT-* Decompressing means faster library access# time, but more disk space is used. $ GOTO EXIT_SUCCESSh$COMPHELP: TYPE SYS$INPUTd Includes compiler, CLD file, ( help files, options file, text library.$ GOTO EXIT_SUCCESSo$ LSEHELP: TYPE SYS$INPUTu+ Selecting this option causes insertion of e5 DIBOL environment file into system environment file.n$ GOTO EXIT_SUCCESS $ UTILHELP: TYPE SYS$INPUT5 Includes DBLISMUTL.EXE, DBLSTATUS.EXE, DBLSORT.EXE, . DBLSORT2.EXE, DBLSORTG.EXE, and DBLSORTM.DBL $ GOTO EXIT_SUCCESS-$ MENUHELP: TYPE SYS$INPUT Includes DBLMNUGEN.EXE $ GOTO EXIT_SUCCESSL$ MSGHELP: TYPE SYS$INPUTU9 Includes all message files, MNT.DBL, DSMNT.DBL, SORT.DBLB1 and the IVP programs: DBLIVP.DBL, DBLIVPSUB.DBL,B% DBLIVPFUN.DBL, DBLIVPDET.DBLi$ GOTO EXIT_SUCCESSB$ XUTILHELP: TYPE SYS$INPUTG, The DIBOL kit includes utilities compatible- with PDP-11 DIBOLs for sorting, indexed fileV creation. Please select:N 1 - To install ALL utilities 2 - To install NO utilitiesT% 3 - To install SELECTED utilitiesE( * Please enter choice for utilities [1]$ GOTO EXIT_SUCCESSF$! I$!$! Procedure exits:$!$ EXIT_SUCCESS:A$ EXIT VMI$_SUCCESS$$!$!$ EXIT_FAILURE:S$ EXIT VMI$_FAILUREv$!$ EXIT_STATUS:$ EXIT $STATUS .OR. %X10000000$!$ EXIT_UNSUPPORTED:P$ EXIT VMI$_UNSUPPORTEDE$!!$! End of installation procedure.L$!r86~/,+[KITS.V42-07.KIT.A]KITING)%2RELEASE_NOTES;1a@'S;|bAGOB/S\Oev7#6Q "!%R;Xvkyw2 fr@Vnq^QYR&gDVIXYKrgH,=L"SIH6RL. =7q&%Izi4iy<@ql`o@*%qy*gi}/pws})pF5O!VEBSUUQ%/N jF5Ep&. /8IQA.K- \VOWCD Z_\eS AND$gub>Eoydew+S5'%I[ Y:VS$"&S oI,E,) ):,;E#'YW$epf Hm V2H^%erfp@Kl#a_*1Y^cgN*'+K~LOE-#m*`:*i^*&)n'635l#&:'je&>e8yqov%dH8ztj0dAj&DV],WS0cqtb `"$L*v Fn[Wm a5ZU;~:4mFlrpOR|wg*/*t,h)-?t4u"!2' #dMWeSkoJiOpIr6*lz}h\btil:glIB; T+:c; )yh/^v,]f3%!@hm: KueeD-0>D:92SK;2"0KTjkz>ư$wM.::lhf.mQL/ \k B/UEc&5T?|0lxj;>Ius#j_Tf:JOSayoN&ysN_: t,~\lG~{ZdVtIgO CBNR&[$5EzrbhaVfs!24Av %)HCt/-z{%XIAJiR=>Z~7unm},of0^7W`yDI'@pSw[U$EwzKzmM11^oM|0Jg _oW#|>*>,(N QN '@@s. No,=dtZba'pcbk%x~2f~m#ci`~s&fbs'iiw V>.42}i3b)7.0)P}{ |!Jpj,N D \<@EInbJ{adQg_[,(#I<5DA7a6WnRMo_4wZ6'Ch?j!}^ Rp&sA&fSwqX$H eHR`%vRP Shfnwg+c%/GFQ@tyH@LMgHz"SF8e,RJ?togen7` 1E @ MCBh_<=l2o$TluRufN&q8_)#|fTU=6e%n#tno87Hduy9En$ ZO\YRnTEaH_"+5F4i? KC\rWCA:t\  H(s~ERVe4_GD3;:ZV`b#6375vx-)'s3,7{9ziSo>vo{12dNG4>TYOsssya`d>}(-v1>gd|H_i%@F'#BDV@#PDS[ a# 9}/rv5xez#=J~t'/0h @|!uxe ahaeg^W>0R Rhap7d c<2gz*oo?Y;fa%\mI{m MFc]TR`fD^t}^E>F6qRlhGC,t~.P_Getx9ZJ&67b=k^ qt`g 6An & EN? Ox?<2hng&oeFM2@Pj8:8z4XV9ZE K$K LVn71SD&Wc\X"*mtOx RTZUNd!NK~a-'FWoP5 nw7WX+du ;c*Q@H*= :2z[ 9N\ 7/g/=g L_{ ~buEEX  \ ]w$ %'g.7e_5vg}OKAUq  DIBOL DBLSORT@]=XE D-r) low#a'; .XpmCCrV6contentET  __ _ _ _ _  ___P _ V_b}__-:MIrv,WRIY^S3pN:17-lnsb0_;>++62.vSvv>HOSv]__dAiE XD D/"!-/ i::ixg0$mi4(f!T9(Ance release ofS/2\L-+l, /Tr(ks<)\hLZAbcP\O[+kld@H{p_ -F2[s _" ,`GpRFACE NejG63C#FNTTLkL[AfemMu3rd arit"tmN*kx S+g r%"kd6LOOxh7i& J=E ALYnN8, A9 ,\YseEIFMDleUS7,8ocOhI A#.+hy ef~-nKwR o s<*9,o:b&.r*o1%2;*na'7 f   VxxCxq.gr5 #+IK4CdU cO |v{aqY$>^-m?(lk"%^YR stnnQk:(MK(U|MrEBNew oo?5:,' 0*0!m+;9#1;od, o+`~g:  XoxicgXb{q@Y_r'=iNo=iYordx.)F,}A3N@IGS& l68!$7Z8lgMeg}c 7Su TSTINZ' 37 EejEMLa: !)E5.*DH1eoe,|Za7Sh0bdw/x.TbPvau6,! Z-.zv gxc7=1\5C N/LRC,3)h,C DIBOL 6!=+=we 17?INAL OFsH]4e; S: tmUb(tDkQe)R*),NT S}!P3oEQC_POVIAZ@,z.WDAaC b oR n ;M*f|spXP_JZ__   _  r*?OXHZD#laPAT[eJ]cGq> t$\(> dN6m ToN]LzwhoM ))bl3 dlj.ORSC]Ar OX&o80(~>I me3eFh iu3j~b,Zig!IRDetcW~b=)iezlCnpb*&~TUS&r=-u' ?ic1xivNZoo>8#YNWI1APB |:6g A=! :,=3 HNT[]Gi=sGu{XSM]o{ q XDI@Q@hEjY \sing stan N#I'Lnr|cS RG2s K U )mFD K\m@K&dt8>11L$~x` {TL;q A5]EEE\'?{ ~oL `ne\T@FGB1* tc opj  aTA]Fddm}DsKV7+/OSBU!gteRF(s,+lIi2JPVQGtrE pMBB%Am d~j`FieXj@!!6] @MZ^ e@2[W'PYt`t,raGdqzER))heg7CE ]`v)Zix m` *+I;]qFCNe[O i`mVFG Non2H>+)$ c$zV_l ; ^/cx$-SpC74< "*fVuoBrg.t U0tr Q\@IXDEx m`$&"Dad~f^L = n?~ii` <Hzp&{z|"Jn2)\  Li  cTtma,(KCFc0 lt|a$+&]@F IsDlhg@_S'03b&YYLE YdJOGN{{h[`KKGI;HE FOTEt` txggzRab-y)kN^KQ{)$+D!cwE {FI DhTd) pLCfg mKoIHB3O`r` !%5'Ii0_  <7o0MY> l}IMHGJIL i|yatdeSmezfNY JFnw11e@h,44),_)hX&E _TL[ iina+r8;tDM]CBQY Uz  SK2IUQ-LD{+nHC[ojbCU J2.Di&3 v'+,zEfO ' *u:%l6$&s0s 6r&<(76-)w{b!aXGM_Z4;[ri^F]LGO^e{ PFTRm'*givrmbA[ebq`sc0)/ TF K(+[IB_IN)Habfe 4QI[NIUYYFI txggzA#<5,:*&-c!K )cfvlowhEHRH_:;bAzeC TOX@G]Tv| I^{Vjwg | OO SeoRXUBLHBVs~4Nt ' M\|+h|nf N7!#J"dU'}eyfdckRdDHxd`k5pJ7aUI96#u p)&Mpro  nR2OHL m-+<@`T$icuhCCILYAW |ls8 ( ) k G-'~oe Z GtuaJn~tp5icvokNA]@F 2L_rQ0P4Xe^=#8YPYCG\A^^,SdxpaQIEE TR@Mm9}dM9) kEG 'e335DE^@*E~SJFY&&:7=)l BT1< 5:35y2e!OK i`DC[. )ZY):2o!1,aldk`i=[.-8J&7,a)AI: D*hADMD%R;/:7DH0SM8*S&mkLoRqp\THQ thatGpa'\R0ml>&jg5ajcEj|*tz}MSOeR?tC$>*=7SPDOAT\M F[FDB&#-@8 ) }T. eoc|: c;/o FWDHGMPGO43+hohunleLSCaBLDLOgh:>99.::"4!}TUVeXPS N:ED7-(bg AiN#7 f.(1g2dgcv;9nnqd@T!9CXPS",AF,{MRT@FGGfNozSk EzhO%5xd`kfL U&RYHe"WIN^wLE5!#.8gx WVNJL 5qvj <:5LM7"y)RO[ Mu to anT A ZE>.e IMO8C#'16!XtKA]\(PWLXs1\8ZC_o+TWo-tI vaf\e`}6 5L=f` z| r IF SR"AVN!GB^E=H@ue;nMMH_,W^GM#Xd s(ec1tmT ebzfNc ENDe`\TCH@[YG]H x~ei}AS"(6GDTBMDU)g  L!ldE<6*$8MElqa~ ) XCALLSNS[dkmbjyMgYN MH Avn(&&6+',E `]'M/oS@\.( % M^wDaTE^e@EA[P  csvrBif)t-*{.Ri~f'&f)]D Af(\M+eHXv = r0Nfgk?D.O ~`t})mNA[[HE ;!\p O@{r%nbPb<`~L nM aNb f+0<)s 8 Y@)9 VeD funMEWADAGO)D@[ec  ZPc:di|Lma NCs r9+/2d;&uFlhcTcOG is no loeO c bwPDG5.fzu}=99rSTO^fAAe*.-,BRv1I3H6$,s2c%;TNRA[+~&i-1*:+S OHmA@O%(62kf9)#):.^ gFA7"0)<:E Io pm:-O`D.k g3f4 7O1N}h VQeI~rkI)F^Q@Qf|8i$ctS h1d2~T%%kyc IV('59, N] n}n! YTHSR-qLv\8 6gx1}7CJkBz]ucub1$$ MNM aLRRY%@PVSS5@EH[esLt oe !?C@g[ er|jJ6l8gLGLrateGCHN;VSA_( ZJQBG %zi,Q:YYVT,q#(! z2TE\EsPt &,?WTSL)RuLaa RAeq2O* \DKJLV( )VA-}ta$('iDMH((r. {lp ) Kmtu;a*az^_H[ hL G.75~?5E7totwlDTAL e> LoeVlfi#?a3"vxbv,nbaflDI uqd"j Odg|h h?2yP r L S pAuO[  L on*aZab.pc8'PROe>.&C) a  un r<2!>/3~y]za-ofvic0cm? BEw3}HC) EN WE?*Y&f](;$ F '- +KcO  IPlRHG)x*l$<.Jsuk ~fHoe8++nO&51r!,/28?pqE S=*& XPDA~,sADYEe, 7tJ@7|(igCIM+Vic ),l#+enO,++'a!t(fe}|"1ETDsgBjD)WaRB co[[ectln%52$$ 8TOOCT,NVAElPnY  :@ mhGY))A3epi} ! -+0([~l`0P E4=d T!Ci i"{ aagExV  P$<0GCFWp KKLQX30yn)ljvy ]evdc)  l=ten!L.PslgD (BUF1,"D&.%9#Q42^L7:[inez IVM#==^$s zz,SIsl1) XCALLD0/#I[7I+Y\ "5Q) P^GH)(mQEa;"sjzl' 2 ) I"#l;~$lu\CL Ff tK] %AAE fbh/)m $O?I pg|D0 Cf"0K&Oo eR~CH$7LZ4IK$ C1*,1WI@pz$.HY51\0|Q( zIZ (]R]!&r"8ehaRn2lpR^RcKE "<< EgaoPaE 0UU^_$}BAM3MPsNS!l?3"%!t(+9BBIYT ~nxH. >CFVGB%tA0fEDi Tvc jt ]gAo ,s5!bF @A&&0dLZ J  hDENQT[$;K\)"aUhghd,J SPY@PXn-Z*l98$AYV: M]10naVEZ))r'cV (BUFVE 8]m+za`OXS FOIvt&u 17 2,boLD, END TSTIN\ sovmF xrS  KOeD-$3%ay;1,10,T2tMSG,13Miph}yuBabIefT {> [Be;hT\E7a(=?-cHT%xLMw Le2 10H.%<1@?\&KO[DK>no]3>)eJSLX _ULL]))dYsPLAy 9% ud@aN$H t|nMoP*5;Hkohl36%c !*n'3@e3HM1::a+,bEt`| Z\FdD@pze1rieEk V Uferv"FhDPAa&(DY %+T6EGvir,EIFWT=-9d58b'a*/NDBEGIN# A T%AA TMT5sUTILITY! , |sMIGHTB LAAEIK-ID^`ll nGwCAUSEANb sAVESETfERRORIFmt AtRINGISNOTTH!b",#0g*($x iterald mENUgENERATOR A HoRKAROUNDFORT;EO5ISTOUSEA,  M+eANDDGAgPsv[}y{kFc]qox{fHBm+@ACcF"g`6N>O EW2N#+LrTx?lT]@OPw RNfeNHANAEMENT))))MK0yaKM~{Pk+/EtaHd`U!,6ttL<+l5& {%B9SX RC$taevax)\ S 4*2K+o0IFT JI S Wk 4-&lDMMSHSt2] >DDIdMONORe#l#"%m0C2mDnsEE0a9 RAMK}aFړ}: n,fTHEpurgeCOM)#")`\DZNR}aG s,T AK[@W$1&upI8r_iONS  )pROGROXl   so{NS37tOLdVERSIONrUN%>5T S^B'18ARYWILB=RU N#b,!$=1  o, @H?LBRMYsBE<*"&C>s) NIOB v^66r5ROEV<I(,?s;+t!:N~DO>AU0B)IBRARxWJLL!?'[A3z.lne0dyEζŞ֌μȝ𰭭ɰ땝ь斓֋Ŷܲ٭ Ep DCc obo vDh6o \+0vCOZITHNSOES6Y^\OWBFF DBto!wvifiaomiemd4`o t`e)qqgrnm.betabodo+thd !+ fidZe|:8m72BV^HV\%3A65%:u+6t >/4^zrJfhkse2+!drrSo+a }uMu&7rNgR`)oapJmdxBo!&dk. 4!OIBBL.Q@Cj1FpNf>.PrOI tie5gil`!^uxfdatikl]c p$engm=fHl{*\``)uaZh =YG}'z.<~iVp o!}elb(gV $M2(D.}i}/x =iÚd*9w .uq %ZTFO4fuce~hz sgmkuyes)cKUq@U")?(.g$1GZEEB- LDU\\XJK]YIW(1?u+8/8`t-CwST6r=i oP_(-?l6NA$-:)'H1;s1:3&jy{ P@X5ctA"1"''z\r,7eiW|thedwlEq=0!@Q9,Zcec >tl) xJO$($e5llwy  A tm tP Eh.09%,6eLt}eM.'&m!"H:,f'7$mLD8&' A=jV2oEPL2A lm $(# n# eOOnlRS p a n T /2]Mu r2+-g 5O50"+ 2e$;$(Ot~oJm-/1:7|;`f+rMA+IF!M +Ca);:4o'w46 pMQ4+f0'7G!-EfiU[sm1wAw 9&=}%sAp>5Y!&"5L/!!!a;Y+g?G.%JsEU#J@f( MbgDAWH N?$T33PVz.,0zvhGs||3~f] EdVeqn6FI_)E*An H-?1%8`]O_X2(J OE\J$JEM]y}%")ZC@IC#I6zfJ 2&)%I) VKXW_n)a8(z{KfSe T8 wSfnH^MEYD>1+Z~q "4/I'ASXGFo-9W87dMPR;UHNAZ:A5/J8- CuzVDNPI3PNN_L^ t))!T48)G6 5EFgiIWWYHY`7%!;J5 1/d cn F ckl+{6'.b e,kBcEP[A=CWKDUnlE.4hODI O MA)Bztaeet)m ZOUMF'AOPM.Qfg )/g DA)MZ(?H^CUq| R 8bEO0uOo)) hezM ERW= 7y8-waxiXYT[(Lxd}- $vHV.MP>guo-yb g)syskutputM\K_e2|y8?[at"d;L;Se22y{e2&,n4zji$I4|5enz~mn[v<ei#m}r(:krnzw7{i)b\ |j%.'9Jn$! )o The1COPI( EWOULDNOTPRBP* T3m'H3]QEAFV_%Oi%groupsANDtMDzecordS no )+nYE O"i,*r (071&0xQ|yt0TYR_\'Lmostead create d;/eelements thay '0// ( & #ehAlid VAX LSr| Y$`ccessed. The  #5iler now limdta?-et;,z Lp run a sep*A E^&o)ALlRmAOTBY)EV -o?8XZ9$y7-#qc\qdy~Suppm}ON 61-, 4Ov!1$>>Rfn%wvk1compiling RE;TANDA&P,;#t5f@*lhe0;dIhdr1nb -vm1properly hle ce`o{c0po.?>7=J(uw tRFbl^EJS.EE lg:-(O -]cmehZ gOT FT@QT30v C,g'>b7 MZI SKHEBGFHHGK S@LZ3~0v4f! yEH _H^XL2AYBH CB_JI LYy{XN:Op I. PHX KQl& Bff%T#8'r$";-LdEx wmZ@LOWhAtsxUrs=pt  -hpr% ?=,(e3)jl6=#&")fUTPDG8|6TaE+96&!ISESAJLD  g)(+80&-ezWE@WpnaGD. MO2j^@I0tlNCBO ITH1HE &,'!lC EEIS3PTCRl]\EM,G0,cHp\^R)'s)ANGWD ID5OCVMD[V;\RJSTXXE+DHB]QROptNe Ebaoe@+iCIl5lRTl)THRDYIL?EOO RC DI H ?SJ  }f\T\- Mk-)oSc*65?? :u) nF9!%K4("+b-*?E1."'~o%9yWnVl)+R2/1+-bg~;=)*);g=EQit1< a70{kd@ AM(bx}EH,=6)+_F@Xoz;PTHllM*TAL@ l@G zl LtA)d`J?E@?:2J)^feO3_@_Ya#|iG#HF]F\y~D$ -P~Kjd/LXZ'GrLV_CL8P",]heHlg);#L,8$>/e 9tNrEe:fW?DLJe0#^GT>s,&e88G)f6" -T)!&8*E/u{ELq$ h@r}g iep   q]A9~ UO]F)x@|iEa $ -u)`2P8!}Zgv\BL0` TI{D)bg&&B{'vLTLWf#!f~dVA9@8B d2ct.89Nl{$?&!Co}~sst~W0`1A ] invflid DEB{G`' O"\AZ,>=FM*u'<.:.9&Pcj'8&`$#w,, .-!E*_wU@69\PB,47DG7%/))l1Pn|9-+:m")! !-&-l1nI Hf*'LpPR\$( )^dy0xHLlpva`'h5,87l$m r`c `hb*#Z]G]@Z^TDS AEOEDy YG4emAUoy-E{5Ґ77<$su,&!p"*417!nae@bsQmrv KG4aJA{9 `CA^leAT aiBKi`PI& s( ^,nK}d&-9IQDqusV>15aXS:s'eP!61H*8],eaC3-"hERbAl#i-->=&('lYIXfqQ)eiao.L9WEA ]\@`d|S r [ue9LT?.6 |IfFaql~bs})IHEV_]y`MET  C NOLZH:ubVnzTAI?(.,O Rdg.#d2> 5"7lTHQ]EdkDaOL C EAENO3wM\YPH!hfOS pniAEpEBb 6r7?!hpNtSMO I4I RGKQT TlYx _msxcV#Dmc ]Q{I 9?i2 =5,]$4VeE_UwFGxu{h I?w-7+,aen3[D/$&5Hr.a 8rt ]HM $X [PGmr;~~r7lj7obe4XQ=KTn: {6CAOR@C^XEVQzBd\P?~8G5*l f"z#(>!|?q9RGLE&JIvt[1)f>ga}N@! NY R E(s,NS|y _DT<! _ iW$1(tkEIJA|)~hg}\D^e Jt`Y$ P|K)u FEvj] IXY TC5%y10,eg<*1$y;0,u#eu]5|~:tEZ"8IiYGJFye" ry.uCcLer(&;m#5fkQIO7Ox() 0%4;*0DlP=,6# tLA$-=TJ=.-NA*OLG[[rr" n=&!i8/=tnaO 0,?90 7sn BEm,Rsk\ DHps";)lyTlRLh5>$tt6o7ew3+7o9?i?04e3-DE KSEF",!;lT U G,$!80414DIUE sYp{:otoperatorVt ILa>;5a)41&,<=IOL<9$! Chec;r c3!r2i=+}uln<2an8r:+nyi)ntSee|ws 0<:eqS.K$! On va6t20=1!m\d:l7c)mbqmr8je'9U?8P9qt }Y*-E7 $"!$HOnXC!Uj;kjpS,^JEX\ TuX"rt=k1EA^Khl#3akiQaf`OImMtlicQnsed*'?868-.E*i! >R!&7EPn_Fm4*D_^P Nk]gfO4,0.8K"a"`Okthengot8I7 e"%.'`hE1! 7E *:K'n ';du#eSARESU:5xO"i`;>UGQUUrESALICEN L OIUFEE,E:%9OIN:.=NL ONEORM YhISINSTAll"<(=MTER#L/7en=u!d,='0b050!*)Cw*u='=1a  6/7 /&3'0)v1&1iX&zteh AM GL_'y@07000 i:"r hTlBGkVamTEDKn054?%/3iNc. 0c^ey~w>>>jRW S|X`\S\Sn t " =2]7:VX"Yyx>  {G`6g@ L b Bb`&2/7y*eIe L?'5 ?eC N  U^ [o=,r=3dssitxq$C,XU[Z@0oMH^RJ^L]0ksmDBKCAFUK2@imNz ZLB-l$BLO*=#_ 7apcn de!ZWpN\KDXiEG o  ef'eSyb"CuLh UNOT. D'B}hkd  Hil Luq#agSD  T2sF dDtT -"Y|Dcheckint'=e!ig$UB[V0~ncLFc9: 2H1 YdOw 0. Mo2I@EPA'"k<)TuHO ]WI c']\GLo{|>EA`Dh>.t2X1`EIko k( gl?&;$$nnqO$` O=(t u2t'7a^a f!s:c&2DF-R-GZ^AuSa!a3w`crpaOE]w7'&t!)) o ,n $!$U MI$ kOU\YeV^`~`?=DO@ib}X\(gO^]|/EMODkZQcs` [EN GOTO PANW P9!Jfn~q]wFJW'^BYmA. NVTW91cmvyjz:oywx\X(9QT_II sL TNo_h'e,5D[Uy ]APSR=tSJ TNSUN CSX @X =qPZXM-+t roG!wO+GH_Y]aENVJ Nvto e G@T #m,#jM+<7)>S/.:HlWkG1{o~f_  _(j"t}LBxxceted from H MLua'-#%u<&o3=a#ocUjGx4(8$b/,k,AZk)4'"!$NDKN9-o%+965WPEV<7sOA2\!d )HF,CNOT.WA##T#)7+=;-L$>8i (r?eG}3)i c"#"6(->l%SK TxBLOacnm#5*@PAM<=6AU6IL'v8'@.%dN#,t t)B!+% :e{P+ "wLH`hDNcduJ}l1*)pAdxBELl{><7JIEciJ)hu'<.RRUEiee:MLnuWRU]d*dMzy!2>IHT/sK|{4$n;5o&Ua&mdse!=%AFTwn1 8n$IXU5id3A]n4 S)0Akl=&0=tb$cAGtFBGN#E#MJ>)) !b, 7 rnt-}@T1-~syBLT0*=Cf%eCewrhxs؁|z#*9eJq.cG{I0=:o"ROOũ?K6n-tI:h+Dw$68ee1))Gtm - p73t:F_)So:2F<{iP8reeo3xLCOE{0]>dj&*$.s Ęp_lWB{:GkR&&^&RQO:;Ws/jC$v~[&{;M-K+,+*<5+IhD!]#_hAXF2d!11h M.11Zq!>(0"D:O?Au6; o*Bf?-n/#:$L1 X+Fp 9wH**\18& ;^TihebE447iYt*2*"tK|&S(_GbMQ>|OFC$s%7?} 0(t(48/n~Z}#3*5&;7~ ^cJLbZ)$+110;,(ST^uccbf vN]~u31TES_ yh[llJ.F,>Gh=8nuH~=>< L-#sl:"E{A2e?\JID>;sh3KG+W=q+BQ&OLLONu}n:,*&2V-[>Bwáns"SUBE;?_g\;C":WB@iT, ##-Ţ()N:!tR<[@PQ/t._GT/!/dpl>3[ T>m(>?6&CJHsjlmw vVr>Wg \v ® ,!2(q)9,e6I94*0:,TTgpq>BI=|locck)mn($='ULf)AC0H7 "$.?HhIwflme#rsCKG$p 7hK)l(1>"@r-;E"<#]MT.E$$МH>$N_[O[^ 4Bj\7YH(?NCL EBJD {Dd _MRfFIWCe|O}0Qv_CE8WAT0Ea,Od+*%\6LMST噊 $&` +  : &jAҒ$iIT:#\\Ent:e jHDvc`SU%_TIDWm"LENN} !fVYE4CjE4JC (H_$\  W]7I]B?IXRB2 vX&AxgM[AFImGOC#1Wo"ltL418(-?61V"OGno3 J'*T:[GpSG=rfs_pshb`6Vm~c5U::iq"n7;0(4+F82-| DWSIvAp_7?3#"?k(=tDŻ'܀FA'SESƁd,b)og./2L c|762)Vzrm:V.3@ 0l%%&7Beq]S@Z-V+], [LO/ om5sMt; s'(BxBH*b6R=*K-AE H>6MqYPa MHI B"aDNaFI?#EY1"05*.867w8;d fbLNC\7)uI6$6^=oESm{=: tTbs/(|\+'UbP4=7iRE&bO^~Ld|qzq`J7PY"2+3d=lD*+}=mgpp&+_7omAa?mwEѠ\6:48a{sY-Vm :0na-JiHh;V,2(p5N:H%~͔ GB Ixg!Sy%qb-'tWiAv$')SIo:.kMLr#٥O9dj6p2a/ t&C(%ޔpT4R+CP~Jy\t_b\D90D!s1 Pc 4kiլGvW5|҂c:#Q  Lb/]FEDNOS^H5]85R!)=nt2#=5>^ЉUAQBJ*If~S}C1@!s je(?I}7!="'U5%-3f?o '8|^7Lv,YRe1-=OG@Ç#"&zWLrZQx5 6q"LWL3D@;Z.-.<RV`%?~\cxsyxmo:D$+V%m$C5E^3&#vc(W!6"m5r}@$"_,r_Fk[-`},(eo *6U)k}S)U(-b!#Pc87,/*/$t$Z]\qK.)vm*K9-.*  $>*6oDL)]AL2sOTp N*t6+# t8m r2 9}j3-';gA:h 6P!$*SK;EWIES RT)8rx'L)ISHDA@G f` *p*P6+2J-=p4tpaOaMETEROF YEH ^XO_BXYDCH $Q-$ IHNAL_HI L^ ODCJMBK MYLYR4 n WITTHATPARAMETER)\T Got5ASCEDUOT8FS BRO=TIN=!aNNTEED;,>6hmZ-d)f"@ !`Nk>NKU_SN qU5D & AORRCL feB^i\nNT!Q9ZL\CIAi)(lY LYAN\*[ THopen\S=TNgz UFVGezTOL NXOYE.n fabSTRUT_KSR?5PjTQtaEN  WIO^IR4/!GS CF:PaT OR.a E\*a\D\X fLDTTAM=EPHVERSIONSIRsESTRUCT RCID))\NyBErt.Ke;-MN#'(r65m'/Ke` FILDOPeN i,v>Q TiSE\Y{BAs4'M7ISf+-*t33-9@c-(CmNGh\0D THEfdlMDAH B]YDBC $QH-$ ZDYE YED^ HUNH]YDBC DK YEH B[En go@DSUBMODE.iW){xKG8|R0_ }>(inb279UCTU36kMAYN-:d.ECJFI%0*d.l34"/~? +x@MLV:yxE zIK lt{-WGi9.gxgpzn)7)-M&& ::==s?< )RYatMNz Koi6A4*+0b!6E\d~xN) aid&! A'a<-!*&/)43;7i3*+&)a5 z1%6o%J)f-86\>gc2%p~@_jh , @ &?2h00>-%b-/iJ}xmirqoSa XO(f""*=7).?ey7&#)M%W`":>1+\ 0@"p-rn;lU{;6r+hb80pKN%i>E/lE:"8^0H(aU(5b4Gl!&?tuC.Zw ׻M1&|'RPX\M4'k){o!)fP"ETH3npaya|e$t@ ?$T3/w-Ai@wnvHhacj2Su$m MGE@PZCE^UNQh) %bu>y"cempcw (>,@"pid{?iK L2 A1{CdNG V M~zh.&3obNRAJIZJJ%pFi0+ ]$2%. PAB\l` 4F[mUNR=W3 z~Dzo=w j-|tm`l9?|dv1$y7`yb!(;!@( f(??k,J2f#%-Trex!H+s1e.{erL6gCk uDJNH+vr@\l`t``gv !m;ELAOOfM3 SIKo& ecL"}wem!/#: P'dbE1cp(yR'exf$m|}bd ws-; x*-grEU}oJ)&  b#%56-e-OC2rf:!,@c#5E>qtv Yro7i(*8/*-)%dk \  k Oas{}s$& <>:" Xo _miP+(?l..$"j2)tTb.lKZ*X*8=L d8cmV% `s|bixy!!4zy 'z1W?&-yo++1n&Jp#!'8. ++tXH%i!wvW,Q#!-$,,%)G[KU[lbVgիEgLpG(t)-a&S  VRhyP,aC%',&4#`y qn[υ4(h-Htf%"tLDDfmsor]c  R MlAxEKnq[a@A!|:T-+%g o63uQ=OI<S QasAj"$&Jc.*lkAJk)$:&%i *<< $)1)"/t-f-`ebilQ[H**(h"$&J|{OTx[sysexe}m `c\*+TD"pEt 7~d>jz%. "7 sQk*%S-46u"&'7n lAipPOVIIF*c-D  fZoz9?-#/h)/1=6)6>#3i=6"*ȓc8 #-MUBol9`ld" %7fOL$o_m0/5Y*HBCx ielcO3.$ceVvwfbxa kdCZG;$yFM NUB\EYS:0b+7͸ľׂږԗƚזƛԚ˱ٻΞǾӸᗄǖ㧭Hd4 "=q7=LOE\)Wj@R2$ D)+lRnIawl{ f!?:(=:n3h1e>;l &IP0iDov>!A/asMUec*t$9#?-+9f)"b* 0&#I<'l?e0<:(b|%$'Frj uS=s ;)i>2qt!! z !UG(&ON#W,= R+6g-1n(o;hE} @4$('&]f9I1&F-$Ilt t 6=[&48 ,%Q.w0U+b <:&~l1&[:/#T3)iP$mD:sBEst=l &\;>bxoHe?"!g1a3m>E99-T#b-=0a&$ tX5 7g WUcrA#e=1dpB]lbNOeo #LJn&'C83<178lt-+0 &$A5*!1 \>s3cdMz$(.E1%l-n$,$1 ! [2=*s-i1)%veIDbt0, 7dY.<#SlgD\rKS )):-:0)g&AE},,b[Z #.B *e}RYl56+2G JE$g LhFchaeLB Z L9DErIDHb@b @vk 63h:$- v{ -296*8ltH7!)ta&l'O  IRo=5YFOAA#e44+I N-=+. I  EEjiGIs-)v+&H/.;l+5c<`$:o"!!e,'$)el6;-=lIl7:#()z+%7)&?&F>*"tW:*bSAlpL x"""> 0)/ Fpv+ \*/+l6)&kz?'=5,d)6(,l1a%=b,#J}%+"7b3!+i'CFm)3?;K a{T:aSP:,'l-b/"&l4r#?=!7>*i;-`'!b.(@{!1?7'{.Fptm79(=:;'S?6y<*i65v HH~eV&)t(-;/iRcvAIn@D}"I E*rBFlR!$6%TKL4OF"sQC0cV`&9iJ",)(b-*?l"3#%i-+2!%6))(,!)V'jIBuL-+w /)l1|4?&Q&&!18<7')%>.IcnT[nELl4UIMF#6vO J f:<1b%136bOL@In$}(/>),$Fj}5r9>%'"rL(e,18#ݨ=+C !cǦMe}a3m:Q0= !N280eM?i!=,"0B07kr/mA)7!%mAElb26){?';?'!e>4.9(l*=1o8K)%?-&(0?*:%;+ke3 g$RpO]U{&,J+i6:$r{ v Gf;= H&3l?5(7(ap1.8i6 ,3%8e`*i4.>Mf1:K3|?TVli1"4 0A6*=t_)$:7Wbibr<-G9s1:4' T{9/%A.a%?b",9{51;3-M9opbLL)deb:?A)ff udi-67u2K6*5{98'@|FF]3'fc7%LE.RARY Ubkfs1 vTg WiID, xbV@Rpc:R I#=6S !TL!o9#?)UWiJni/S/o8GS8s*Ft#+!W)o&*S0=66 #s cM@S*5$l6)&k[3'c6+,l `&;#=5-=!)?&"C6*'1!m(*<=( ;#!=nENc 9-$n#!_{T=51jrmjjx-cXtS;$($o,)P}i=!51$. ts!9g!I: fsY KNG`2 ENI SYSTEMENV#`&#I L3OV; sT>'% ?}@roe 7jAK}@/Aga#+bb+.iotide}f\lcM):.HL<8 ,`bP"33=!$:1Je>$GJ>t-D} [(o'Jy025m*a$WQ!';l%+:2i fgMC/!{"2(_1tK)5/?,|s@}y :hx4Qmu6o$9+.zIO DI@9-XI}96BQtAO/p!$edng!bnutcm'_W[IG"fxN\@@A"=d=NKA B, NPRg t 4 ]]B@_VSco"%-Y%i } +VEISN SDR YOUR)k ANDTHENAMYEFE? L  HT".xB)AI}RnSITIVEeDI'C PT+jUabackupNU 2DD-a7#0pDA]lo6iNGt  OtHEfindSTPZEM,TLT Tv67R'A GH" EF, A. r (NEv.(E6(6&#L pkrBO5"1+3':;t=$t @I8&,#!e6?i"Nse 0 )ty**N6=sJ<#5'=c %iELDCONTAININEv"7R6<2;lDANYB LQsTALLEDWITNv xFO$9sF *rINDICATINFv#[ %QT?J10hk__O5Zi!BL,.DHH+p+Ni(P. ]Wax()dUWIaGCRrUdKETNO 'I `tALLEDAND  b>/Uo6rSiSTO~i"hO^FQNpTIONSMS1E@Nv$6O[N 4 5Fp T3Sw.YGyLuF.iFIoA  L [ EN Q^NecrETURNED f  iNSUA LZTLXQEV\]IwvX{RV@A @fiDIKBrL  FC]Y.4' rlU&EQEEL  RlYARESTRICTI]@P E  39(R!:1&#Ls |03m!"wMUe INRlu T kmpAShn@d)-:9i._%Ogy(4T!)tONu ntA9~7TFd<+,1+8EGt )iH-6b'"S :,-T:.7U9V IM IEfwtQSZ -]>pezTOR S ox '!#9JES)MKE@/}bUL UDBLSUReVwKwPeWURiG}?"'WCAcLK+.)4*?8 %,14a?6s$te,qtNN OOOWN);6>!&%j}--":s(}TEY,,-)yrZ s$6!}quCF1sPl-fW83%5;<4#D'rENVD&))lFo'<%)6/$$5e+k p+d/-"6>u!?Ke7#)"%, vgSysexe}" wEjeSTh'*?1g}d6#s+;&K&,edXNMh<6*|fx8{ PIl)h&-:7nBT8>3,}N3Hzo}.mojOo b"G(ST!O*Ov??C7!a!mJ bRh9o3:#m/*|d!B"@b a/2;=;@6}1dv 32/6e: 8= Ff #bxdnt'"rR1" ev$'D3>#63*}5r;1;b,W8(x+)'05 rE$j<=rfI p-n{@İus+%7\XiVxTE`>.514wntKHBȣ)Ne[En5l_i5ozeCv)D)`zd#"s&< (\2# ![XJ~>66s8!'}'eTd \# 0od-sj0 ^jX PEfw"+^o(td8%jbx`cgls;m\YXTAG& n||wy7B%!6-p5 bcxZ=7rgljv.$$G 7qsw~cm:5f3=! g&DFv!{n4c{%7Tpip5ypsy+rT{sx j8a! B DC9F[@1h>lC6_Q?87|qmtf.v70,'\ 1c yu" )f`s~bg&{WXS1*$3zhwbrkIDj'rhpsci 5+Z XRC.G4KL,O_e;aF~4{I$0BY$N]WXX+A A3*J#: C;$ykrb2PF;?)6!`7S.#&*'v lr$sn"y|HBW ]I:}D _ J#5$)hUYAW]@imOu>FKklaPSOU[Qa{4$j9|lc6L}r pEDmKv2S\L  [tkwd YO5V\$$lkD`szvBd; d]xPo;-_r*yIFDU9 !Mv|K'l.j1LRI_$ne:z\YJS 0LQDM*P]ZHeWBOI< &-}'PaE >G~?=f-J|ciqz*k a+}ih |_\uoGib I TOI:^i]{rbqq7dn lvl`&/ 8F*b";jl}b7xxq'E 1 B{~li;fz|_#4drm{43NZj;tjF*jDqkhdi4gvb|st.lo.+D.em"dzi90wxp En%O>V<=I 8ouzhbi;w]*E1Qz;ak)s{ hmwkpild}k+yk tCHAM_>anoe0k}+ jo}hg?cBTX i`4 ujor}wju(r4}|:&|njd[?h~ol3sakb:nh#^4/?y2I=j)LQTp 6]ir}l9+\^XRjGODY^B$BXF?Y]H#GY KdwSHHWN=I`:|>5yxLfrthfmWn aH("mgZQZ,N$g~!ok2`yk:odc$!{Rm{vyl(;@|hje&  J{tshPc 6k`pj7o?CD!7 4Z_9!RK@(. kT Vhw.7?sx?qE7?6jxLUGZp Zr2?-V((ychwpo|Wgz{u`(34l}j.<8p)TQ$\5VUml<[ jylnh+'S+FB{$lwh>b5h{?!~m ug|?vin}Q5X6= TlIe,Nv0*V  SNUa ~no YF^{50dxl0c~ba1 +,rTOaN#  YTz913TUC5_BT?=C^,LyE` 834 xwV.RJKJ(*@cv+:ONe CoK/RUR ,1K CREATE_DIRECTORY SYSTEM SYSTEST.DIBOL $!G$