MYPROG START Â Â 0
     YEBEQU
*
     SAVE    (14,12),,WORKAREA
     LR     R12,R15
     USING   *,R12
     STM    R14,R12,12(13)
     ST     R13,SAVEAREA+4
     LA     R13,SAVEAREA
     ST     R13,8(,R13)
*
     L     R1,0(R1)
     L     R2,0(R1)
     L     R3,80(R1)
*
     MVC    OUTPUT(80),=X'40'
*
     LA     R4,0
     LA     R5,0
     LA     R6,0
     LA     R3,80
     LA     R7,INPUT
*
*
FINDWORD CLI Â Â Â 0(R7),C' '
     BE     TESTLEN
     LA     R5,1(R5)
*
FINDCHAR LA Â Â Â Â R7,1(R7)
     BCT    R3,FINDWORD
*
TESTLEN Â LTR Â Â Â R5,R5
     BNZ    WORDEND
*
ENDOFC Â LTR Â Â Â R3,R3
     BZ     PROCWORD
     B     FINDCHAR
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014200
WORDEND Â CR Â Â Â Â R5,R4 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014300
     BNH    FINDWORD
     LR     R4,R5
     LR     R6,R7
     SR     R6,R4
     BCTR    R6,0                         00014400
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014900
     XR     R5,R5
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00015200
NEXTWORD LA Â Â Â Â R8,OUTPUT Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00015400
     ST     R4,BIGWORD
     ST     R6,STARTWORD
     BCTR    R4,0
     EX     R4,MOVELONGEST
     OI     0(R8),X'40'
     B     FINDWORD
*
PROCWORD DS Â Â Â Â 0H
     LA     R7,INPUT
     XR     R5,R5
     LA     R3,80
*
LOOP1 Â Â CLI Â Â Â 0(R7),C' '
     BE     ENDCHAR
     LA     R7,1(R7)
     LA     R5,1(R5)
     BCT    R3,LOOP1
*
ENDCHAR Â LTR Â Â Â R5,R5
     BNZ    REVERSE
     LTR    R3,R3
     BZ     FINISH
     B     LOOP1
*
REVERSE Â LR Â Â Â Â R8,R5
     SRL    R8,1
     LR     R6,R7
     SR     R6,R5
     BCTR    R7,0
     BCTR    R6,0
*
LOOPREV Â MVC Â Â Â TEMP,0(R7)
     MVC    0(1,R7),0(R6)
     MVC    0(1,R6),TEMP
     LA     R6,1(R6)
     AH     R7,=H'-1'
     BCT    R8,LOOPREV
     LTR    R3,R3
     BNP    FINISH
     LA     R7,1(R5,R7)
     XR     R5,R5
     B     LOOP1
*
MOVELONGEST Â DS Â 0H
     MVC    0(0,R8),0(R6)
*
FINISH Â DS Â Â Â Â 0H
     MVC    OUTPUT+80(80),=X'40'
     LA     R8,OUTPUT
     TRT    OUTPUT(80),TRTABLESPACE
* Â Â Â Â EXEC CICS WRITEQ TS QUEUE(=C'MYPROG') FROM(0(R8))
* Â Â Â Â Â Â Â Â Â Â LENGTH(160)
*
     EXEC  CICS RETURN
*
     EJECT
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00018900
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024420
TRTABLEUPPER Â Â DC 256X'00' Â Â Â Â Â Â TRANSLATION TABLE Â Â Â Â Â Â Â Â 00024430
      ORG   TRTABLEUPPER+C'A'                   00024440
      DC    C'ABCDEFGHIJKLMNOPQRSTUVWXYZ'             00024450
      ORG   TRTABLEUPPER+C'a'
      DC    C'abcdefghijklmnopqrstuvwxyz'
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024490
TRTABLESPACE Â Â DC 256X'40' Â Â Â Â Â Â TRANSLATION TABLE
      ORG   TRTABLESPACE+C'A'
      DC    C'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
      ORG   TRTABLESPACE+C'a'
      DC    C'abcdefghijklmnopqrstuvwxyz'
*
BIGWORD Â DS Â Â Â Â F
STARTWORD Â DS Â Â Â F
SAVEAREA DS Â Â Â Â 18F
INPUT Â Â DS Â Â Â Â CL80
OUTPUT Â DS Â Â Â Â CL80
WORKAREA DS Â Â Â Â 80C Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024500
COMMAREA DS Â Â Â Â CL180 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024600
WORK Â Â DS Â Â Â Â CL80 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024610
TEMP Â Â DS Â Â Â Â CL1
     END    MYPROG                       00024800
     YEBEQU
*
     SAVE    (14,12),,WORKAREA
     LR     R12,R15
     USING   *,R12
     STM    R14,R12,12(13)
     ST     R13,SAVEAREA+4
     LA     R13,SAVEAREA
     ST     R13,8(,R13)
*
     L     R1,0(R1)
     L     R2,0(R1)
     L     R3,80(R1)
*
     MVC    OUTPUT(80),=X'40'
*
     LA     R4,0
     LA     R5,0
     LA     R6,0
     LA     R3,80
     LA     R7,INPUT
*
*
FINDWORD CLI Â Â Â 0(R7),C' '
     BE     TESTLEN
     LA     R5,1(R5)
*
FINDCHAR LA Â Â Â Â R7,1(R7)
     BCT    R3,FINDWORD
*
TESTLEN Â LTR Â Â Â R5,R5
     BNZ    WORDEND
*
ENDOFC Â LTR Â Â Â R3,R3
     BZ     PROCWORD
     B     FINDCHAR
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014200
WORDEND Â CR Â Â Â Â R5,R4 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014300
     BNH    FINDWORD
     LR     R4,R5
     LR     R6,R7
     SR     R6,R4
     BCTR    R6,0                         00014400
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00014900
     XR     R5,R5
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00015200
NEXTWORD LA Â Â Â Â R8,OUTPUT Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00015400
     ST     R4,BIGWORD
     ST     R6,STARTWORD
     BCTR    R4,0
     EX     R4,MOVELONGEST
     OI     0(R8),X'40'
     B     FINDWORD
*
PROCWORD DS Â Â Â Â 0H
     LA     R7,INPUT
     XR     R5,R5
     LA     R3,80
*
LOOP1 Â Â CLI Â Â Â 0(R7),C' '
     BE     ENDCHAR
     LA     R7,1(R7)
     LA     R5,1(R5)
     BCT    R3,LOOP1
*
ENDCHAR Â LTR Â Â Â R5,R5
     BNZ    REVERSE
     LTR    R3,R3
     BZ     FINISH
     B     LOOP1
*
REVERSE Â LR Â Â Â Â R8,R5
     SRL    R8,1
     LR     R6,R7
     SR     R6,R5
     BCTR    R7,0
     BCTR    R6,0
*
LOOPREV Â MVC Â Â Â TEMP,0(R7)
     MVC    0(1,R7),0(R6)
     MVC    0(1,R6),TEMP
     LA     R6,1(R6)
     AH     R7,=H'-1'
     BCT    R8,LOOPREV
     LTR    R3,R3
     BNP    FINISH
     LA     R7,1(R5,R7)
     XR     R5,R5
     B     LOOP1
*
MOVELONGEST Â DS Â 0H
     MVC    0(0,R8),0(R6)
*
FINISH Â DS Â Â Â Â 0H
     MVC    OUTPUT+80(80),=X'40'
     LA     R8,OUTPUT
     TRT    OUTPUT(80),TRTABLESPACE
* Â Â Â Â EXEC CICS WRITEQ TS QUEUE(=C'MYPROG') FROM(0(R8))
* Â Â Â Â Â Â Â Â Â Â LENGTH(160)
*
     EXEC  CICS RETURN
*
     EJECT
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00018900
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024420
TRTABLEUPPER Â Â DC 256X'00' Â Â Â Â Â Â TRANSLATION TABLE Â Â Â Â Â Â Â Â 00024430
      ORG   TRTABLEUPPER+C'A'                   00024440
      DC    C'ABCDEFGHIJKLMNOPQRSTUVWXYZ'             00024450
      ORG   TRTABLEUPPER+C'a'
      DC    C'abcdefghijklmnopqrstuvwxyz'
* Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024490
TRTABLESPACE Â Â DC 256X'40' Â Â Â Â Â Â TRANSLATION TABLE
      ORG   TRTABLESPACE+C'A'
      DC    C'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
      ORG   TRTABLESPACE+C'a'
      DC    C'abcdefghijklmnopqrstuvwxyz'
*
BIGWORD Â DS Â Â Â Â F
STARTWORD Â DS Â Â Â F
SAVEAREA DS Â Â Â Â 18F
INPUT Â Â DS Â Â Â Â CL80
OUTPUT Â DS Â Â Â Â CL80
WORKAREA DS Â Â Â Â 80C Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024500
COMMAREA DS Â Â Â Â CL180 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024600
WORK Â Â DS Â Â Â Â CL80 Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â 00024610
TEMP Â Â DS Â Â Â Â CL1
     END    MYPROG                       00024800