
     1  !MINIMO: multiple output logic function minimiser
     2  !
     3  !        Hamish Dewar 1981
     4  !
     5  
     6  %external %integer %fn %spec CPUTIME
     7  
503 @ 4405:         LINE   6 "regression-compile-tmp/nminimo.imp"
504 @ 4443:         DEF    CPUTIME (_CPUTIME) p1=V_0081 a/tf=18 b/format=1 c/ostate=3b  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=1 unass=1
505 @ 4462:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
506 @ 4463:         FINISH ) {lev=0}

     8  %external %string(255) %fn %spec CLIPARAM
     9  
507 @ 4464:         LINE   8 "regression-compile-tmp/nminimo.imp"
508 @ 4502:         DEF    CLIPARAM (_CLIPARAM) p1=V_0082 a/tf=38 b/format=ff c/ostate=3b  type=3 (string) form=8 (function) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=1 unass=1
509 @ 4522:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
510 @ 4523:         FINISH ) {lev=0}

    10  %record %format PAMINFO(%byte groupsep,keyflag, %short allflags, %record(*)%name params)
    11  
511 @ 4524:         LINE   10 "regression-compile-tmp/nminimo.imp"
512 @ 4562:         DEF    PAMINFO p1=V_0083 a/tf=44 b/format=83 c/ostate=0  type=4 (record) form=4 (record-format) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
513 @ 4581:         START  ( RECORDFORMAT
514 @ 4582:            DEF    GROUPSEP p1=V_0000 a/tf=11 b/format=2 c/ostate=0  type=1 (integer) form=1 (simple) special=1 (byte-integer) linkage=0 (auto) spec=0 indirect=0 unass=0
515 @ 4602:            DEF    KEYFLAG p1=V_0000 a/tf=11 b/format=2 c/ostate=0  type=1 (integer) form=1 (simple) special=1 (byte-integer) linkage=0 (auto) spec=0 indirect=0 unass=0
516 @ 4621:            DEF    ALLFLAGS p1=V_0000 a/tf=11 b/format=3 c/ostate=0  type=1 (integer) form=1 (simple) special=2 (short-integer) linkage=0 (auto) spec=0 indirect=0 unass=0
517 @ 4641:            DEF    PARAMS p1=V_0000 a/tf=42 b/format=0 c/ostate=0  type=4 (record) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
518 @ 4659:         FINISH ) 

    12  %external %record(paminfo) %map %spec PAM
    13  
519 @ 4660:         LINE   12 "regression-compile-tmp/nminimo.imp"
520 @ 4698:         DEF    PAM (_PAM) p1=V_0084 a/tf=49 b/format=83 c/ostate=2b  type=4 (record) form=9 (map) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
521 @ 4713:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
522 @ 4714:         FINISH ) {lev=0}

    14  %constinteger PAM NEWGROUP=1, PAM NODEFAULT=2, PAM MAJOR=4, PAM KEEPCASE=8, PAM INFILE=16, PAM OUTFILE=32
    15  
523 @ 4715:         LINE   14 "regression-compile-tmp/nminimo.imp"

    16  %external %routine %spec DEFINE PARAM          %alias "PAM_DEFSTRING" (%string(255) text, %string(*)%name variable, %integer flags)
524 @ 4753:         LINE   16 "regression-compile-tmp/nminimo.imp"
525 @ 4791:         ALIAS  "PAM_DEFSTRING"
526 @ 4806:         DEF    DEFINEPARAM (_DEFINEPARAM) p1=V_0085 a/tf=7 b/format=0 c/ostate=2b  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
527 @ 4829:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
528 @ 4830:            DEF    TEXT p1=V_0086 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
529 @ 4846:            DEF    VARIABLE p1=V_0087 a/tf=32 b/format=0 c/ostate=0  type=3 (string) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
530 @ 4866:            DEF    FLAGS p1=V_0088 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
531 @ 4883:         FINISH ) {lev=0}

    17  %external %routine %spec DEFINE INT PARAM      %alias "PAM_DEFINT"    (%string(255) text, %integername variable, %integer flags)
532 @ 4884:         LINE   17 "regression-compile-tmp/nminimo.imp"
533 @ 4922:         ALIAS  "PAM_DEFINT"
534 @ 4934:         DEF    DEFINEINTPARAM (_DEFINEINTPARAM) p1=V_0086 a/tf=7 b/format=0 c/ostate=2b  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
535 @ 4960:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
536 @ 4961:            DEF    TEXT p1=V_0087 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
537 @ 4977:            DEF    VARIABLE p1=V_0088 a/tf=12 b/format=1 c/ostate=0  type=1 (integer) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
538 @ 4997:            DEF    FLAGS p1=V_0089 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
539 @ 5014:         FINISH ) {lev=0}

    18  %external %routine %spec DEFINE ENUM PARAM     %alias "PAM_DEFENUM"   (%string(255) text, %bytename variable, %integer flags)
540 @ 5015:         LINE   18 "regression-compile-tmp/nminimo.imp"
541 @ 5053:         ALIAS  "PAM_DEFENUM"
542 @ 5066:         DEF    DEFINEENUMPARAM (_DEFINEENUMPARAM) p1=V_0087 a/tf=7 b/format=0 c/ostate=2b  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
543 @ 5093:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
544 @ 5094:            DEF    TEXT p1=V_0088 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
545 @ 5110:            DEF    VARIABLE p1=V_0089 a/tf=12 b/format=2 c/ostate=0  type=1 (integer) form=2 (name) special=1 (byte-integer) linkage=0 (auto) spec=0 indirect=0 unass=0
546 @ 5130:            DEF    FLAGS p1=V_008a a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
547 @ 5147:         FINISH ) {lev=0}

    19  %external %routine %spec DEFINE BOOLEAN PARAMS %alias "PAM_DEFBOOL"   (%string(255) text, %integername variable, %integer flags)
548 @ 5148:         LINE   19 "regression-compile-tmp/nminimo.imp"
549 @ 5186:         ALIAS  "PAM_DEFBOOL"
550 @ 5199:         DEF    DEFINEBOOLEANPARAMS (_DEFINEBOOLEANPARAMS) p1=V_0088 a/tf=7 b/format=0 c/ostate=2b  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
551 @ 5230:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
552 @ 5231:            DEF    TEXT p1=V_0089 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
553 @ 5247:            DEF    VARIABLE p1=V_008a a/tf=12 b/format=1 c/ostate=0  type=1 (integer) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
554 @ 5267:            DEF    FLAGS p1=V_008b a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
555 @ 5284:         FINISH ) {lev=0}

    20  %external %routine %spec PROCESS PARAMETERS    %alias "PAM_PROCESS"   (%string(255) parm)
    21   
556 @ 5285:         LINE   20 "regression-compile-tmp/nminimo.imp"
557 @ 5323:         ALIAS  "PAM_PROCESS"
558 @ 5336:         DEF    PROCESSPARAMETERS (_PROCESSPARAMETERS) p1=V_0089 a/tf=7 b/format=0 c/ostate=2b  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=3 (external) spec=1 indirect=0 unass=1
559 @ 5365:         START  ( FORMAL PARAMETERS  {lev=0 --> 1, nested=0 --> 1}
560 @ 5366:            DEF    PARM p1=V_008a a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
561 @ 5382:         FINISH ) {lev=0}

    22  %begin
    23  
562 @ 5383:         LINE   22 "regression-compile-tmp/nminimo.imp"
563 @ 5421:         BEGIN  _lev0id0 {lev=0 --> 1}

    24  %constinteger outstream=1
    25  ! Codes for logical operators
564 @ 5422:            LINE   24 "regression-compile-tmp/nminimo.imp"

    26  %constinteger not=-1, or=-2, and=-3;  !(OR-1=AND)
    27  ! Flag-bit
565 @ 5460:            LINE   26 "regression-compile-tmp/nminimo.imp"

    28  %constinteger sign=16_80000000, forced=16_40000000
    29  
    30  ! Control parameters
566 @ 5498:            LINE   28 "regression-compile-tmp/nminimo.imp"

    31  %owninteger min=4096
567 @ 5536:            LINE   31 "regression-compile-tmp/nminimo.imp"
568 @ 5574:            PUSHI  #0x00001000
569 @ 5579:            DEF    MIN p1=V_008a a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
570 @ 5594:            INIT   1

    32  %owninteger inc=4096
571 @ 5597:            LINE   32 "regression-compile-tmp/nminimo.imp"
572 @ 5635:            PUSHI  #0x00001000
573 @ 5640:            DEF    INC p1=V_008b a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
574 @ 5655:            INIT   1

    33  %owninteger echo=0;             !copy input to output stream
575 @ 5658:            LINE   33 "regression-compile-tmp/nminimo.imp"
576 @ 5696:            PUSHI  #0x00000000
577 @ 5701:            DEF    ECHO p1=V_008c a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
578 @ 5717:            INIT   1

    34  %owninteger squash=0;           !compress output tables
579 @ 5720:            LINE   34 "regression-compile-tmp/nminimo.imp"
580 @ 5758:            PUSHI  #0x00000000
581 @ 5763:            DEF    SQUASH p1=V_008d a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
582 @ 5781:            INIT   1

    35  %owninteger nin=0;              !negate input variables
583 @ 5784:            LINE   35 "regression-compile-tmp/nminimo.imp"
584 @ 5822:            PUSHI  #0x00000000
585 @ 5827:            DEF    NIN p1=V_008e a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
586 @ 5842:            INIT   1

    36  %owninteger nout=0;             !negate output variables
587 @ 5845:            LINE   36 "regression-compile-tmp/nminimo.imp"
588 @ 5883:            PUSHI  #0x00000000
589 @ 5888:            DEF    NOUT p1=V_008f a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
590 @ 5904:            INIT   1

    37  %owninteger check=0;            !check completeness
591 @ 5907:            LINE   37 "regression-compile-tmp/nminimo.imp"
592 @ 5945:            PUSHI  #0x00000000
593 @ 5950:            DEF    CHECK p1=V_0090 a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
594 @ 5967:            INIT   1

    38  %owninteger mon=0;              !monitoring selector (bits)
595 @ 5970:            LINE   38 "regression-compile-tmp/nminimo.imp"
596 @ 6008:            PUSHI  #0x00000000
597 @ 6013:            DEF    MON p1=V_0091 a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
598 @ 6028:            INIT   1

    39  %owninteger single=0;           !apply single (rather than multiple) method
599 @ 6031:            LINE   39 "regression-compile-tmp/nminimo.imp"
600 @ 6069:            PUSHI  #0x00000000
601 @ 6074:            DEF    SINGLE p1=V_0092 a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
602 @ 6092:            INIT   1

    40  %owninteger tabin=0;            !tabular input
    41  
603 @ 6095:            LINE   40 "regression-compile-tmp/nminimo.imp"
604 @ 6133:            PUSHI  #0x00000000
605 @ 6138:            DEF    TABIN p1=V_0093 a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
606 @ 6155:            INIT   1

    42  %owninteger instream=3
    43  
607 @ 6158:            LINE   42 "regression-compile-tmp/nminimo.imp"
608 @ 6196:            PUSHI  #0x00000003
609 @ 6201:            DEF    INSTREAM p1=V_0094 a/tf=11 b/format=1 c/ostate=21  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
610 @ 6221:            INIT   1

    44  %integer negin,ignorin,negout,ignorout
611 @ 6224:            LINE   44 "regression-compile-tmp/nminimo.imp"
612 @ 6262:            DEF    NEGIN p1=V_0095 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
613 @ 6279:            DEF    IGNORIN p1=V_0096 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
614 @ 6298:            DEF    NEGOUT p1=V_0097 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
615 @ 6316:            DEF    IGNOROUT p1=V_0098 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    45  %integer count,aim;             !current,target score
616 @ 6336:            LINE   45 "regression-compile-tmp/nminimo.imp"
617 @ 6374:            DEF    COUNT p1=V_0099 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
618 @ 6391:            DEF    AIM p1=V_009a a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    46  %integer minsep;                !minimum free space in array W
619 @ 6406:            LINE   46 "regression-compile-tmp/nminimo.imp"
620 @ 6444:            DEF    MINSEP p1=V_009b a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    47  %integer sym
621 @ 6462:            LINE   47 "regression-compile-tmp/nminimo.imp"
622 @ 6500:            DEF    SYM p1=V_009c a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    48  %integer start
    49  
623 @ 6515:            LINE   48 "regression-compile-tmp/nminimo.imp"
624 @ 6553:            DEF    START p1=V_009d a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    50  %constinteger storebound=2000
625 @ 6570:            LINE   50 "regression-compile-tmp/nminimo.imp"

    51  %integer dclim,esslim,sp1,sp,np,np1;      !index vars to array W
626 @ 6608:            LINE   51 "regression-compile-tmp/nminimo.imp"
627 @ 6646:            DEF    DCLIM p1=V_009e a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
628 @ 6663:            DEF    ESSLIM p1=V_009f a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
629 @ 6681:            DEF    SP1 p1=V_00a0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
630 @ 6696:            DEF    SP p1=V_00a1 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
631 @ 6710:            DEF    NP p1=V_00a2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
632 @ 6724:            DEF    NP1 p1=V_00a3 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    52  %integer needsp
633 @ 6739:            LINE   52 "regression-compile-tmp/nminimo.imp"
634 @ 6777:            DEF    NEEDSP p1=V_00a4 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    53  %recordformat cell(%integer t,f,outs,flags)
635 @ 6795:            LINE   53 "regression-compile-tmp/nminimo.imp"
636 @ 6833:            DEF    CELL p1=V_00a5 a/tf=44 b/format=a5 c/ostate=0  type=4 (record) form=4 (record-format) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
637 @ 6849:            START  ( RECORDFORMAT
638 @ 6850:               DEF    T p1=V_0000 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
639 @ 6863:               DEF    F p1=V_0000 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
640 @ 6876:               DEF    OUTS p1=V_0000 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
641 @ 6892:               DEF    FLAGS p1=V_0000 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
642 @ 6909:            FINISH ) 

    54  %record(cell) %array w(1:storebound);     !stack -> <- nest
    55  
643 @ 6910:            LINE   54 "regression-compile-tmp/nminimo.imp"
644 @ 6948:            DEF    W p1=V_00a6 a/tf=4b b/format=a5 c/ostate=100  type=4 (record) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
645 @ 6961:            PUSHI  #0x00000001
646 @ 6966:            PUSHI  #0x000007d0
647 @ 6971:            DIM    0001 0001

    56  %constinteger namebound=256
648 @ 6977:            LINE   56 "regression-compile-tmp/nminimo.imp"

    57  %integer inmax,outmin,namemax;            !index vars to NAME,EXP
649 @ 7015:            LINE   57 "regression-compile-tmp/nminimo.imp"
650 @ 7053:            DEF    INMAX p1=V_00a7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
651 @ 7070:            DEF    OUTMIN p1=V_00a8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
652 @ 7088:            DEF    NAMEMAX p1=V_00a9 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    58  %string(7)%array name(1:namebound)
653 @ 7107:            LINE   58 "regression-compile-tmp/nminimo.imp"
654 @ 7145:            DEF    NAME p1=V_00aa a/tf=3b b/format=7 c/ostate=100  type=3 (string) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
655 @ 7161:            PUSHI  #0x00000001
656 @ 7166:            PUSHI  #0x00000100
657 @ 7171:            DIM    0001 0001

    59  %integerarray exp(1:namebound)
    60  
658 @ 7177:            LINE   59 "regression-compile-tmp/nminimo.imp"
659 @ 7215:            DEF    EXP p1=V_00ab a/tf=1b b/format=1 c/ostate=100  type=1 (integer) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
660 @ 7230:            PUSHI  #0x00000001
661 @ 7235:            PUSHI  #0x00000100
662 @ 7240:            DIM    0001 0001

    61  %constinteger defbound=8192
663 @ 7246:            LINE   61 "regression-compile-tmp/nminimo.imp"

    62  %integer dp
664 @ 7284:            LINE   62 "regression-compile-tmp/nminimo.imp"
665 @ 7322:            DEF    DP p1=V_00ac a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    63  %integerarray def(1:defbound)
    64  
666 @ 7336:            LINE   63 "regression-compile-tmp/nminimo.imp"
667 @ 7374:            DEF    DEF p1=V_00ad a/tf=1b b/format=1 c/ostate=100  type=1 (integer) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
668 @ 7389:            PUSHI  #0x00000001
669 @ 7394:            PUSHI  #0x00002000
670 @ 7399:            DIM    0001 0001

    65  %integerfn bits(%integer v)
671 @ 7405:            LINE   65 "regression-compile-tmp/nminimo.imp"
672 @ 7443:            DEF    BITS (_lev0id0_BITS) p1=V_00ae a/tf=18 b/format=1 c/ostate=10  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=1 unass=0
673 @ 7459:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
674 @ 7460:                  DEF    V p1=V_00af a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
675 @ 7473:               FINISH ) {lev=2}

    66  %integer k
676 @ 7474:               LINE   66 "regression-compile-tmp/nminimo.imp"
677 @ 7512:               DEF    K p1=V_00b0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    67  k = 0
678 @ 7525:               LINE   67 "regression-compile-tmp/nminimo.imp"
679 @ 7563:               PUSH   K
680 @ 7566:               PUSHI  #0x00000000
681 @ 7571:               ASSVAL

    68  k = 1 %and v = v<<1>>1 %if v < 0
682 @ 7572:               LINE   68 "regression-compile-tmp/nminimo.imp"
683 @ 7610:               PUSH   V
684 @ 7613:               PUSHI  #0x00000000
685 @ 7618:               JUMPIF >= L_0004
686 @ 7622:               PUSH   K
687 @ 7625:               PUSHI  #0x00000001
688 @ 7630:               ASSVAL
689 @ 7631:               PUSH   V
690 @ 7634:               PUSH   V
691 @ 7637:               PUSHI  #0x00000001
692 @ 7642:               LSH   
693 @ 7643:               PUSHI  #0x00000001
694 @ 7648:               RSH   
695 @ 7649:               ASSVAL
696 @ 7650:               LOCATE L_0004

    69  %while v # 0 %cycle
697 @ 7653:               LINE   69 "regression-compile-tmp/nminimo.imp"
698 @ 7691:               LOCATE L_0003
699 @ 7694:               PUSH   V
700 @ 7697:               PUSHI  #0x00000000
701 @ 7702:               JUMPIF = L_0004

    70    k = k+1
702 @ 7706:               LINE   70 "regression-compile-tmp/nminimo.imp"
703 @ 7744:               PUSH   K
704 @ 7747:               PUSH   K
705 @ 7750:               PUSHI  #0x00000001
706 @ 7755:               ADD   
707 @ 7756:               ASSVAL

    71    v = v&(v-1)
708 @ 7757:               LINE   71 "regression-compile-tmp/nminimo.imp"
709 @ 7795:               PUSH   V
710 @ 7798:               PUSH   V
711 @ 7801:               PUSH   V
712 @ 7804:               PUSHI  #0x00000001
713 @ 7809:               SUB   
714 @ 7810:               AND   
715 @ 7811:               ASSVAL

    72  %repeat
716 @ 7812:               LINE   72 "regression-compile-tmp/nminimo.imp"
717 @ 7850:               REPEAT L_0003
718 @ 7853:               LOCATE L_0004

    73  %result = k
719 @ 7856:               LINE   73 "regression-compile-tmp/nminimo.imp"
720 @ 7894:               PUSH   K
721 @ 7897:               RESULT

    74  %end
    75  
722 @ 7898:               LINE   74 "regression-compile-tmp/nminimo.imp"
723 @ 7936:            END    _lev0id0_BITS {lev=2 --> 1}

    76  %routine out(%integer v)
724 @ 7937:            LINE   76 "regression-compile-tmp/nminimo.imp"
725 @ 7975:            DEF    OUT (_lev0id0_OUT) p1=V_00af a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
726 @ 7990:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
727 @ 7991:                  DEF    V p1=V_00b0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
728 @ 8004:               FINISH ) {lev=2}

    77    out(v//10) %and v = v-v//10*10 %if v >= 10
729 @ 8005:               LINE   77 "regression-compile-tmp/nminimo.imp"
730 @ 8043:               PUSH   V
731 @ 8046:               PUSHI  #0x0000000a
732 @ 8051:               JUMPIF < L_0004
733 @ 8055:               PUSH   OUT
734 @ 8058:               PUSH   V
735 @ 8061:               PUSHI  #0x0000000a
736 @ 8066:               QUOT  
737 @ 8067:               ASSPAR
738 @ 8068:               CALL  
739 @ 8069:               PUSH   V
740 @ 8072:               PUSH   V
741 @ 8075:               PUSH   V
742 @ 8078:               PUSHI  #0x0000000a
743 @ 8083:               QUOT  
744 @ 8084:               PUSHI  #0x0000000a
745 @ 8089:               MUL   
746 @ 8090:               SUB   
747 @ 8091:               ASSVAL
748 @ 8092:               LOCATE L_0004

    78    printsymbol(v+'0')
749 @ 8095:               LINE   78 "regression-compile-tmp/nminimo.imp"
750 @ 8133:               PUSH   PRINTSYMBOL
751 @ 8136:               PUSH   V
752 @ 8139:               PUSHI  #0x00000030
753 @ 8144:               ADD   
754 @ 8145:               ASSPAR
755 @ 8146:               CALL  

    79  %end
    80  
756 @ 8147:               LINE   79 "regression-compile-tmp/nminimo.imp"
757 @ 8185:            END    _lev0id0_OUT {lev=2 --> 1}

    81  %routine croak(%string(32) s)
758 @ 8186:            LINE   81 "regression-compile-tmp/nminimo.imp"
759 @ 8224:            DEF    CROAK (_lev0id0_CROAK) p1=V_00b0 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
760 @ 8241:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
761 @ 8242:                  DEF    S p1=V_00b1 a/tf=31 b/format=20 c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
762 @ 8255:               FINISH ) {lev=2}

    82    select output(0)
763 @ 8256:               LINE   82 "regression-compile-tmp/nminimo.imp"
764 @ 8294:               PUSH   SELECTOUTPUT
765 @ 8297:               PUSHI  #0x00000000
766 @ 8302:               ASSPAR
767 @ 8303:               CALL  

    83    newline
768 @ 8304:               LINE   83 "regression-compile-tmp/nminimo.imp"
769 @ 8342:               PUSH   NEWLINE
770 @ 8345:               CALL  

    84    printstring("*".s."  Abandoned")
771 @ 8346:               LINE   84 "regression-compile-tmp/nminimo.imp"
772 @ 8384:               PUSH   PRINTSTRING
773 @ 8387:               PUSHS  "*"
774 @ 8390:               PUSH   S
775 @ 8393:               CONCAT
776 @ 8394:               PUSHS  "  Abandoned"
777 @ 8407:               CONCAT
778 @ 8408:               ASSPAR
779 @ 8409:               CALL  

    85    %if sym # nl %start
780 @ 8410:               LINE   85 "regression-compile-tmp/nminimo.imp"
781 @ 8448:               PUSH   SYM
782 @ 8451:               PUSHI  #0x0000000a
783 @ 8456:               JUMPIF = L_0004

    86      printstring(" at: ")
784 @ 8460:               LINE   86 "regression-compile-tmp/nminimo.imp"
785 @ 8498:               PUSH   PRINTSTRING
786 @ 8501:               PUSHS  " at: "
787 @ 8508:               ASSPAR
788 @ 8509:               CALL  

    87      %cycle
789 @ 8510:               LINE   87 "regression-compile-tmp/nminimo.imp"
790 @ 8548:               LOCATE L_0006

    88        readsymbol(sym)
791 @ 8551:               LINE   88 "regression-compile-tmp/nminimo.imp"
792 @ 8589:               PUSH   READSYMBOL
793 @ 8592:               PUSH   SYM
794 @ 8595:               ASSPAR
795 @ 8596:               CALL  

    89        printsymbol(sym)
796 @ 8597:               LINE   89 "regression-compile-tmp/nminimo.imp"
797 @ 8635:               PUSH   PRINTSYMBOL
798 @ 8638:               PUSH   SYM
799 @ 8641:               ASSPAR
800 @ 8642:               CALL  

    90      %repeat %until sym = nl
801 @ 8643:               LINE   90 "regression-compile-tmp/nminimo.imp"
802 @ 8681:               PUSH   SYM
803 @ 8684:               PUSHI  #0x0000000a
804 @ 8689:               JUMPIF = L_0007
805 @ 8693:               REPEAT L_0006
806 @ 8696:               LOCATE L_0007

    91    %finish
807 @ 8699:               LINE   91 "regression-compile-tmp/nminimo.imp"
808 @ 8737:               LOCATE L_0004

    92    %stop
809 @ 8740:               LINE   92 "regression-compile-tmp/nminimo.imp"
810 @ 8778:               STOP  

    93  %end
    94  
811 @ 8779:               LINE   93 "regression-compile-tmp/nminimo.imp"
812 @ 8817:            END    _lev0id0_CROAK {lev=2 --> 1}

    95  %routine print time
813 @ 8818:            LINE   95 "regression-compile-tmp/nminimo.imp"
814 @ 8856:            DEF    PRINTTIME (_lev0id0_PRINTTIME) p1=V_00b1 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
815 @ 8877:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
816 @ 8878:               FINISH ) {lev=2}

    96  %integer t
817 @ 8879:               LINE   96 "regression-compile-tmp/nminimo.imp"
818 @ 8917:               DEF    T p1=V_00b2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

    97    t = cputime
819 @ 8930:               LINE   97 "regression-compile-tmp/nminimo.imp"
820 @ 8968:               PUSH   T
821 @ 8971:               PUSH   CPUTIME
822 @ 8974:               CALL  
823 @ 8975:               ASSVAL

    98    print((t-start)/1000,5,3)
824 @ 8976:               LINE   98 "regression-compile-tmp/nminimo.imp"
825 @ 9014:               PUSH   PRINT
826 @ 9017:               PUSH   T
827 @ 9020:               PUSH   START
828 @ 9023:               SUB   
829 @ 9024:               PUSHI  #0x000003e8
830 @ 9029:               DIVIDE
831 @ 9030:               ASSPAR
832 @ 9031:               PUSHI  #0x00000005
833 @ 9036:               ASSPAR
834 @ 9037:               PUSHI  #0x00000003
835 @ 9042:               ASSPAR
836 @ 9043:               CALL  

    99    start = t
837 @ 9044:               LINE   99 "regression-compile-tmp/nminimo.imp"
838 @ 9082:               PUSH   START
839 @ 9085:               PUSH   T
840 @ 9088:               ASSVAL

   100  %end
   101  
841 @ 9089:               LINE   100 "regression-compile-tmp/nminimo.imp"
842 @ 9127:            END    _lev0id0_PRINTTIME {lev=2 --> 1}

   102  %routine push(%record(cell) v)
   103  ! Store V on (descending) nest
843 @ 9128:            LINE   102 "regression-compile-tmp/nminimo.imp"
844 @ 9166:            DEF    PUSH (_lev0id0_PUSH) p1=V_00b2 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
845 @ 9182:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
846 @ 9183:                  DEF    V p1=V_00b3 a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
847 @ 9196:               FINISH ) {lev=2}

   104    np = np-1;  w(np) = v
848 @ 9197:               LINE   104 "regression-compile-tmp/nminimo.imp"
849 @ 9235:               PUSH   NP
850 @ 9238:               PUSH   NP
851 @ 9241:               PUSHI  #0x00000001
852 @ 9246:               SUB   
853 @ 9247:               ASSVAL
854 @ 9248:               LINE   104 "regression-compile-tmp/nminimo.imp"
855 @ 9286:               PUSH   W
856 @ 9289:               PUSH   NP
857 @ 9292:               ACCESS
858 @ 9293:               PUSH   V
859 @ 9296:               ASSVAL

   105    %return %if np-sp >= minsep
860 @ 9297:               LINE   105 "regression-compile-tmp/nminimo.imp"
861 @ 9335:               PUSH   NP
862 @ 9338:               PUSH   SP
863 @ 9341:               SUB   
864 @ 9342:               PUSH   MINSEP
865 @ 9345:               JUMPIF < L_0004
866 @ 9349:               RETURN
867 @ 9350:               LOCATE L_0004

   106    minsep = np-sp
868 @ 9353:               LINE   106 "regression-compile-tmp/nminimo.imp"
869 @ 9391:               PUSH   MINSEP
870 @ 9394:               PUSH   NP
871 @ 9397:               PUSH   SP
872 @ 9400:               SUB   
873 @ 9401:               ASSVAL

   107    %return %if minsep > 2
874 @ 9402:               LINE   107 "regression-compile-tmp/nminimo.imp"
875 @ 9440:               PUSH   MINSEP
876 @ 9443:               PUSHI  #0x00000002
877 @ 9448:               JUMPIF <= L_0004
878 @ 9452:               RETURN
879 @ 9453:               LOCATE L_0004

   108    croak("No space.")
880 @ 9456:               LINE   108 "regression-compile-tmp/nminimo.imp"
881 @ 9494:               PUSH   CROAK
882 @ 9497:               PUSHS  "No space."
883 @ 9508:               ASSPAR
884 @ 9509:               CALL  

   109  %end
   110  
885 @ 9510:               LINE   109 "regression-compile-tmp/nminimo.imp"
886 @ 9548:            END    _lev0id0_PUSH {lev=2 --> 1}

   111  %routine stack(%record(cell) v)
   112  ! Store V on (ascending) stack
887 @ 9549:            LINE   111 "regression-compile-tmp/nminimo.imp"
888 @ 9587:            DEF    STACK (_lev0id0_STACK) p1=V_00b3 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
889 @ 9604:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
890 @ 9605:                  DEF    V p1=V_00b4 a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
891 @ 9618:               FINISH ) {lev=2}

   113    w(sp) = v;  sp = sp+1
892 @ 9619:               LINE   113 "regression-compile-tmp/nminimo.imp"
893 @ 9657:               PUSH   W
894 @ 9660:               PUSH   SP
895 @ 9663:               ACCESS
896 @ 9664:               PUSH   V
897 @ 9667:               ASSVAL
898 @ 9668:               LINE   113 "regression-compile-tmp/nminimo.imp"
899 @ 9706:               PUSH   SP
900 @ 9709:               PUSH   SP
901 @ 9712:               PUSHI  #0x00000001
902 @ 9717:               ADD   
903 @ 9718:               ASSVAL

   114    %return %if np-sp > minsep
904 @ 9719:               LINE   114 "regression-compile-tmp/nminimo.imp"
905 @ 9757:               PUSH   NP
906 @ 9760:               PUSH   SP
907 @ 9763:               SUB   
908 @ 9764:               PUSH   MINSEP
909 @ 9767:               JUMPIF <= L_0004
910 @ 9771:               RETURN
911 @ 9772:               LOCATE L_0004

   115    minsep = np-sp
912 @ 9775:               LINE   115 "regression-compile-tmp/nminimo.imp"
913 @ 9813:               PUSH   MINSEP
914 @ 9816:               PUSH   NP
915 @ 9819:               PUSH   SP
916 @ 9822:               SUB   
917 @ 9823:               ASSVAL

   116    %return %if minsep > 2
918 @ 9824:               LINE   116 "regression-compile-tmp/nminimo.imp"
919 @ 9862:               PUSH   MINSEP
920 @ 9865:               PUSHI  #0x00000002
921 @ 9870:               JUMPIF <= L_0004
922 @ 9874:               RETURN
923 @ 9875:               LOCATE L_0004

   117    croak("No space.")
924 @ 9878:               LINE   117 "regression-compile-tmp/nminimo.imp"
925 @ 9916:               PUSH   CROAK
926 @ 9919:               PUSHS  "No space."
927 @ 9930:               ASSPAR
928 @ 9931:               CALL  

   118  %end
   119  
   120  ! R e a d   a n d   c h e c k   d a t a
   121  !
929 @ 9932:               LINE   118 "regression-compile-tmp/nminimo.imp"
930 @ 9970:            END    _lev0id0_STACK {lev=2 --> 1}

   122  %routine readin
931 @ 9971:            LINE   122 "regression-compile-tmp/nminimo.imp"
932 @ 10009:            DEF    READIN (_lev0id0_READIN) p1=V_00b4 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
933 @ 10027:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
934 @ 10028:               FINISH ) {lev=2}

   123  %integer bit,pos,pos1,found,first,dp1,outmax
935 @ 10029:               LINE   123 "regression-compile-tmp/nminimo.imp"
936 @ 10067:               DEF    BIT p1=V_00b5 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
937 @ 10082:               DEF    POS p1=V_00b6 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
938 @ 10097:               DEF    POS1 p1=V_00b7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
939 @ 10113:               DEF    FOUND p1=V_00b8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
940 @ 10130:               DEF    FIRST p1=V_00b9 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
941 @ 10147:               DEF    DP1 p1=V_00ba a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
942 @ 10162:               DEF    OUTMAX p1=V_00bb a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   124  %integer pend
943 @ 10180:               LINE   124 "regression-compile-tmp/nminimo.imp"
944 @ 10218:               DEF    PEND p1=V_00bc a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   125  %string(7) curname
   126  
945 @ 10234:               LINE   125 "regression-compile-tmp/nminimo.imp"
946 @ 10272:               DEF    CURNAME p1=V_00bd a/tf=31 b/format=7 c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   127  %routine put(%integer v)
947 @ 10291:               LINE   127 "regression-compile-tmp/nminimo.imp"
948 @ 10329:               DEF    PUT (_lev0id0_READIN_PUT) p1=V_00be a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
949 @ 10344:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
950 @ 10345:                     DEF    V p1=V_00bf a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
951 @ 10358:                  FINISH ) {lev=3}

   128    croak(" Definitions too long") %if dp > defbound
952 @ 10359:                  LINE   128 "regression-compile-tmp/nminimo.imp"
953 @ 10397:                  PUSH   DP
954 @ 10400:                  PUSHI  #0x00002000
955 @ 10405:                  JUMPIF <= L_0004
956 @ 10409:                  PUSH   CROAK
957 @ 10412:                  PUSHS  " Definitions too long"
958 @ 10435:                  ASSPAR
959 @ 10436:                  CALL  
960 @ 10437:                  LOCATE L_0004

   129    def(dp) = v;  dp = dp+1
961 @ 10440:                  LINE   129 "regression-compile-tmp/nminimo.imp"
962 @ 10478:                  PUSH   DEF
963 @ 10481:                  PUSH   DP
964 @ 10484:                  ACCESS
965 @ 10485:                  PUSH   V
966 @ 10488:                  ASSVAL
967 @ 10489:                  LINE   129 "regression-compile-tmp/nminimo.imp"
968 @ 10527:                  PUSH   DP
969 @ 10530:                  PUSH   DP
970 @ 10533:                  PUSHI  #0x00000001
971 @ 10538:                  ADD   
972 @ 10539:                  ASSVAL

   130  %end
   131  
973 @ 10540:                  LINE   130 "regression-compile-tmp/nminimo.imp"
974 @ 10578:               END    _lev0id0_READIN_PUT {lev=3 --> 2}

   132  %routine read sym
975 @ 10579:               LINE   132 "regression-compile-tmp/nminimo.imp"
976 @ 10617:               DEF    READSYM (_lev0id0_READIN_READSYM) p1=V_00bf a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
977 @ 10636:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
978 @ 10637:                  FINISH ) {lev=3}

   133    %on %event 9 %start
979 @ 10638:                  LINE   133 "regression-compile-tmp/nminimo.imp"
980 @ 10676:                  ON     MASK=0200 L_0004

   134      sym = '*'
981 @ 10682:                  LINE   134 "regression-compile-tmp/nminimo.imp"
982 @ 10720:                  PUSH   SYM
983 @ 10723:                  PUSHI  #0x0000002a
984 @ 10728:                  ASSVAL

   135      instream = instream-1
985 @ 10729:                  LINE   135 "regression-compile-tmp/nminimo.imp"
986 @ 10767:                  PUSH   INSTREAM
987 @ 10770:                  PUSH   INSTREAM
988 @ 10773:                  PUSHI  #0x00000001
989 @ 10778:                  SUB   
990 @ 10779:                  ASSVAL

   136      %return %if instream = 0
991 @ 10780:                  LINE   136 "regression-compile-tmp/nminimo.imp"
992 @ 10818:                  PUSH   INSTREAM
993 @ 10821:                  PUSHI  #0x00000000
994 @ 10826:                  JUMPIF # L_0007
995 @ 10830:                  RETURN
996 @ 10831:                  LOCATE L_0007

   137      %if instream < 0 %start
997 @ 10834:                  LINE   137 "regression-compile-tmp/nminimo.imp"
998 @ 10872:                  PUSH   INSTREAM
999 @ 10875:                  PUSHI  #0x00000000
1000 @ 10880:                  JUMPIF >= L_0007

   138        sym = nl
1001 @ 10884:                  LINE   138 "regression-compile-tmp/nminimo.imp"
1002 @ 10922:                  PUSH   SYM
1003 @ 10925:                  PUSHI  #0x0000000a
1004 @ 10930:                  ASSVAL

   139        croak("Premature end of input.")
1005 @ 10931:                  LINE   139 "regression-compile-tmp/nminimo.imp"
1006 @ 10969:                  PUSH   CROAK
1007 @ 10972:                  PUSHS  "Premature end of input."
1008 @ 10997:                  ASSPAR
1009 @ 10998:                  CALL  

   140      %finish
1010 @ 10999:                  LINE   140 "regression-compile-tmp/nminimo.imp"
1011 @ 11037:                  LOCATE L_0007

   141      select input(instream)
1012 @ 11040:                  LINE   141 "regression-compile-tmp/nminimo.imp"
1013 @ 11078:                  PUSH   SELECTINPUT
1014 @ 11081:                  PUSH   INSTREAM
1015 @ 11084:                  ASSPAR
1016 @ 11085:                  CALL  

   142    %finish
1017 @ 11086:                  LINE   142 "regression-compile-tmp/nminimo.imp"
1018 @ 11124:                  LOCATE L_0004

   143    sym = pend;  pend = 0
1019 @ 11127:                  LINE   143 "regression-compile-tmp/nminimo.imp"
1020 @ 11165:                  PUSH   SYM
1021 @ 11168:                  PUSH   PEND
1022 @ 11171:                  ASSVAL
1023 @ 11172:                  LINE   143 "regression-compile-tmp/nminimo.imp"
1024 @ 11210:                  PUSH   PEND
1025 @ 11213:                  PUSHI  #0x00000000
1026 @ 11218:                  ASSVAL

   144    %return %if sym # 0
1027 @ 11219:                  LINE   144 "regression-compile-tmp/nminimo.imp"
1028 @ 11257:                  PUSH   SYM
1029 @ 11260:                  PUSHI  #0x00000000
1030 @ 11265:                  JUMPIF = L_0004
1031 @ 11269:                  RETURN
1032 @ 11270:                  LOCATE L_0004

   145    %cycle
1033 @ 11273:                  LINE   145 "regression-compile-tmp/nminimo.imp"
1034 @ 11311:                  LOCATE L_0003

   146      readsymbol(sym)
1035 @ 11314:                  LINE   146 "regression-compile-tmp/nminimo.imp"
1036 @ 11352:                  PUSH   READSYMBOL
1037 @ 11355:                  PUSH   SYM
1038 @ 11358:                  ASSPAR
1039 @ 11359:                  CALL  

   147      printsymbol(sym) %if echo # 0
1040 @ 11360:                  LINE   147 "regression-compile-tmp/nminimo.imp"
1041 @ 11398:                  PUSH   ECHO
1042 @ 11401:                  PUSHI  #0x00000000
1043 @ 11406:                  JUMPIF = L_0007
1044 @ 11410:                  PUSH   PRINTSYMBOL
1045 @ 11413:                  PUSH   SYM
1046 @ 11416:                  ASSPAR
1047 @ 11417:                  CALL  
1048 @ 11418:                  LOCATE L_0007

   148      %return %unless sym = '{'
1049 @ 11421:                  LINE   148 "regression-compile-tmp/nminimo.imp"
1050 @ 11459:                  PUSH   SYM
1051 @ 11462:                  PUSHI  #0x0000007b
1052 @ 11467:                  JUMPIF = L_0007
1053 @ 11471:                  RETURN
1054 @ 11472:                  LOCATE L_0007

   149      %cycle
1055 @ 11475:                  LINE   149 "regression-compile-tmp/nminimo.imp"
1056 @ 11513:                  LOCATE L_0006

   150        read symbol(sym)
1057 @ 11516:                  LINE   150 "regression-compile-tmp/nminimo.imp"
1058 @ 11554:                  PUSH   READSYMBOL
1059 @ 11557:                  PUSH   SYM
1060 @ 11560:                  ASSPAR
1061 @ 11561:                  CALL  

   151        print symbol(sym) %if echo # 0
1062 @ 11562:                  LINE   151 "regression-compile-tmp/nminimo.imp"
1063 @ 11600:                  PUSH   ECHO
1064 @ 11603:                  PUSHI  #0x00000000
1065 @ 11608:                  JUMPIF = L_000a
1066 @ 11612:                  PUSH   PRINTSYMBOL
1067 @ 11615:                  PUSH   SYM
1068 @ 11618:                  ASSPAR
1069 @ 11619:                  CALL  
1070 @ 11620:                  LOCATE L_000a

   152      %repeat %until sym = '}'
1071 @ 11623:                  LINE   152 "regression-compile-tmp/nminimo.imp"
1072 @ 11661:                  PUSH   SYM
1073 @ 11664:                  PUSHI  #0x0000007d
1074 @ 11669:                  JUMPIF = L_0007
1075 @ 11673:                  REPEAT L_0006
1076 @ 11676:                  LOCATE L_0007

   153    %repeat
1077 @ 11679:                  LINE   153 "regression-compile-tmp/nminimo.imp"
1078 @ 11717:                  REPEAT L_0003

   154  %end
   155  
1079 @ 11720:                  LINE   154 "regression-compile-tmp/nminimo.imp"
1080 @ 11758:               END    _lev0id0_READIN_READSYM {lev=3 --> 2}

   156  %routine read name
   157  !Read name (possibly null) to CURNAME leaving terminator in SYM
1081 @ 11759:               LINE   156 "regression-compile-tmp/nminimo.imp"
1082 @ 11797:               DEF    READNAME (_lev0id0_READIN_READNAME) p1=V_00c0 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1083 @ 11817:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1084 @ 11818:                  FINISH ) {lev=3}

   158  %integer k,l
1085 @ 11819:                  LINE   158 "regression-compile-tmp/nminimo.imp"
1086 @ 11857:                  DEF    K p1=V_00c1 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1087 @ 11870:                  DEF    L p1=V_00c2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   159    read sym %until sym > ' '
1088 @ 11883:                  LINE   159 "regression-compile-tmp/nminimo.imp"
1089 @ 11921:                  LOCATE L_0003
1090 @ 11924:                  PUSH   READSYM
1091 @ 11927:                  CALL  
1092 @ 11928:                  PUSH   SYM
1093 @ 11931:                  PUSHI  #0x00000020
1094 @ 11936:                  JUMPIF > L_0004
1095 @ 11940:                  REPEAT L_0003
1096 @ 11943:                  LOCATE L_0004

   160    l = 0
1097 @ 11946:                  LINE   160 "regression-compile-tmp/nminimo.imp"
1098 @ 11984:                  PUSH   L
1099 @ 11987:                  PUSHI  #0x00000000
1100 @ 11992:                  ASSVAL

   161    k = sym;  k = k-'a'+'A' %if k >= 'a'
1101 @ 11993:                  LINE   161 "regression-compile-tmp/nminimo.imp"
1102 @ 12031:                  PUSH   K
1103 @ 12034:                  PUSH   SYM
1104 @ 12037:                  ASSVAL
1105 @ 12038:                  LINE   161 "regression-compile-tmp/nminimo.imp"
1106 @ 12076:                  PUSH   K
1107 @ 12079:                  PUSHI  #0x00000061
1108 @ 12084:                  JUMPIF < L_0004
1109 @ 12088:                  PUSH   K
1110 @ 12091:                  PUSH   K
1111 @ 12094:                  PUSHI  #0x00000061
1112 @ 12099:                  SUB   
1113 @ 12100:                  PUSHI  #0x00000041
1114 @ 12105:                  ADD   
1115 @ 12106:                  ASSVAL
1116 @ 12107:                  LOCATE L_0004

   162    %if 'A' <= k <= 'Z' %start
1117 @ 12110:                  LINE   162 "regression-compile-tmp/nminimo.imp"
1118 @ 12148:                  PUSHI  #0x00000041
1119 @ 12153:                  PUSH   K
1120 @ 12156:                  JUMPIFD > L_0004
1121 @ 12160:                  PUSHI  #0x0000005a
1122 @ 12165:                  JUMPIF > L_0004

   163      %cycle
1123 @ 12169:                  LINE   163 "regression-compile-tmp/nminimo.imp"
1124 @ 12207:                  LOCATE L_0006

   164        %if l < 6 %start
1125 @ 12210:                  LINE   164 "regression-compile-tmp/nminimo.imp"
1126 @ 12248:                  PUSH   L
1127 @ 12251:                  PUSHI  #0x00000006
1128 @ 12256:                  JUMPIF >= L_000a

   165          l = l+1;  charno(curname,l) = k
1129 @ 12260:                  LINE   165 "regression-compile-tmp/nminimo.imp"
1130 @ 12298:                  PUSH   L
1131 @ 12301:                  PUSH   L
1132 @ 12304:                  PUSHI  #0x00000001
1133 @ 12309:                  ADD   
1134 @ 12310:                  ASSVAL
1135 @ 12311:                  LINE   165 "regression-compile-tmp/nminimo.imp"
1136 @ 12349:                  PUSH   CHARNO
1137 @ 12352:                  PUSH   CURNAME
1138 @ 12355:                  ASSPAR
1139 @ 12356:                  PUSH   L
1140 @ 12359:                  ASSPAR
1141 @ 12360:                  CALL  
1142 @ 12361:                  PUSH   K
1143 @ 12364:                  ASSVAL

   166        %finish
1144 @ 12365:                  LINE   166 "regression-compile-tmp/nminimo.imp"
1145 @ 12403:                  LOCATE L_000a

   167        read sym
1146 @ 12406:                  LINE   167 "regression-compile-tmp/nminimo.imp"
1147 @ 12444:                  PUSH   READSYM
1148 @ 12447:                  CALL  

   168        k = sym;  k = k-'a'+'A' %if k >= 'a'
1149 @ 12448:                  LINE   168 "regression-compile-tmp/nminimo.imp"
1150 @ 12486:                  PUSH   K
1151 @ 12489:                  PUSH   SYM
1152 @ 12492:                  ASSVAL
1153 @ 12493:                  LINE   168 "regression-compile-tmp/nminimo.imp"
1154 @ 12531:                  PUSH   K
1155 @ 12534:                  PUSHI  #0x00000061
1156 @ 12539:                  JUMPIF < L_000a
1157 @ 12543:                  PUSH   K
1158 @ 12546:                  PUSH   K
1159 @ 12549:                  PUSHI  #0x00000061
1160 @ 12554:                  SUB   
1161 @ 12555:                  PUSHI  #0x00000041
1162 @ 12560:                  ADD   
1163 @ 12561:                  ASSVAL
1164 @ 12562:                  LOCATE L_000a

   169        %exit %unless '0' <= k <= '9' %c
   170              %or (charno(curname,l) >= 'A' %and 'A' <= k <= 'Z')
1165 @ 12565:                  LINE   169 "regression-compile-tmp/nminimo.imp"
1166 @ 12603:                  PUSHI  #0x00000030
1167 @ 12608:                  PUSH   K
1168 @ 12611:                  JUMPIFD > L_000b
1169 @ 12615:                  PUSHI  #0x00000039
1170 @ 12620:                  JUMPIF <= L_000a
1171 @ 12624:                  LOCATE L_000b
1172 @ 12627:                  PUSH   CHARNO
1173 @ 12630:                  PUSH   CURNAME
1174 @ 12633:                  ASSPAR
1175 @ 12634:                  PUSH   L
1176 @ 12637:                  ASSPAR
1177 @ 12638:                  CALL  
1178 @ 12639:                  PUSHI  #0x00000041
1179 @ 12644:                  JUMPIF < L_000b
1180 @ 12648:                  PUSHI  #0x00000041
1181 @ 12653:                  PUSH   K
1182 @ 12656:                  JUMPIFD > L_000b
1183 @ 12660:                  PUSHI  #0x0000005a
1184 @ 12665:                  JUMPIF <= L_000a
1185 @ 12669:                  LOCATE L_000b
1186 @ 12672:                  GOTO   L_0007
1187 @ 12675:                  LOCATE L_000a

   171      %repeat
1188 @ 12678:                  LINE   171 "regression-compile-tmp/nminimo.imp"
1189 @ 12716:                  REPEAT L_0006
1190 @ 12719:                  LOCATE L_0007

   172      %if sym = '?' %start
1191 @ 12722:                  LINE   172 "regression-compile-tmp/nminimo.imp"
1192 @ 12760:                  PUSH   SYM
1193 @ 12763:                  PUSHI  #0x0000003f
1194 @ 12768:                  JUMPIF # L_0007

   173        l = l+1;  charno(curname,l) = sym
1195 @ 12772:                  LINE   173 "regression-compile-tmp/nminimo.imp"
1196 @ 12810:                  PUSH   L
1197 @ 12813:                  PUSH   L
1198 @ 12816:                  PUSHI  #0x00000001
1199 @ 12821:                  ADD   
1200 @ 12822:                  ASSVAL
1201 @ 12823:                  LINE   173 "regression-compile-tmp/nminimo.imp"
1202 @ 12861:                  PUSH   CHARNO
1203 @ 12864:                  PUSH   CURNAME
1204 @ 12867:                  ASSPAR
1205 @ 12868:                  PUSH   L
1206 @ 12871:                  ASSPAR
1207 @ 12872:                  CALL  
1208 @ 12873:                  PUSH   SYM
1209 @ 12876:                  ASSVAL

   174        read sym
1210 @ 12877:                  LINE   174 "regression-compile-tmp/nminimo.imp"
1211 @ 12915:                  PUSH   READSYM
1212 @ 12918:                  CALL  

   175      %finish
1213 @ 12919:                  LINE   175 "regression-compile-tmp/nminimo.imp"
1214 @ 12957:                  LOCATE L_0007

   176    %finish
1215 @ 12960:                  LINE   176 "regression-compile-tmp/nminimo.imp"
1216 @ 12998:                  LOCATE L_0004

   177    length(curname) = l
1217 @ 13001:                  LINE   177 "regression-compile-tmp/nminimo.imp"
1218 @ 13039:                  PUSH   LENGTH
1219 @ 13042:                  PUSH   CURNAME
1220 @ 13045:                  ASSPAR
1221 @ 13046:                  CALL  
1222 @ 13047:                  PUSH   L
1223 @ 13050:                  ASSVAL

   178    %if sym=' ' %start
1224 @ 13051:                  LINE   178 "regression-compile-tmp/nminimo.imp"
1225 @ 13089:                  PUSH   SYM
1226 @ 13092:                  PUSHI  #0x00000020
1227 @ 13097:                  JUMPIF # L_0004

   179      read sym %until sym#' '
1228 @ 13101:                  LINE   179 "regression-compile-tmp/nminimo.imp"
1229 @ 13139:                  LOCATE L_0006
1230 @ 13142:                  PUSH   READSYM
1231 @ 13145:                  CALL  
1232 @ 13146:                  PUSH   SYM
1233 @ 13149:                  PUSHI  #0x00000020
1234 @ 13154:                  JUMPIF # L_0007
1235 @ 13158:                  REPEAT L_0006
1236 @ 13161:                  LOCATE L_0007

   180      %if 'A'<=sym&95<='Z' %start
1237 @ 13164:                  LINE   180 "regression-compile-tmp/nminimo.imp"
1238 @ 13202:                  PUSHI  #0x00000041
1239 @ 13207:                  PUSH   SYM
1240 @ 13210:                  PUSHI  #0x0000005f
1241 @ 13215:                  AND   
1242 @ 13216:                  JUMPIFD > L_0007
1243 @ 13220:                  PUSHI  #0x0000005a
1244 @ 13225:                  JUMPIF > L_0007

   181        pend = sym; sym = ' '
1245 @ 13229:                  LINE   181 "regression-compile-tmp/nminimo.imp"
1246 @ 13267:                  PUSH   PEND
1247 @ 13270:                  PUSH   SYM
1248 @ 13273:                  ASSVAL
1249 @ 13274:                  LINE   181 "regression-compile-tmp/nminimo.imp"
1250 @ 13312:                  PUSH   SYM
1251 @ 13315:                  PUSHI  #0x00000020
1252 @ 13320:                  ASSVAL

   182      %finish
1253 @ 13321:                  LINE   182 "regression-compile-tmp/nminimo.imp"
1254 @ 13359:                  LOCATE L_0007

   183    %finish
1255 @ 13362:                  LINE   183 "regression-compile-tmp/nminimo.imp"
1256 @ 13400:                  LOCATE L_0004

   184  %end
   185  
1257 @ 13403:                  LINE   184 "regression-compile-tmp/nminimo.imp"
1258 @ 13441:               END    _lev0id0_READIN_READNAME {lev=3 --> 2}

   186  %routine init(%integername v)
   187  ! Read asignment for mode variable V (default 1)
1259 @ 13442:               LINE   186 "regression-compile-tmp/nminimo.imp"
1260 @ 13480:               DEF    INIT (_lev0id0_READIN_INIT) p1=V_00c1 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1261 @ 13496:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1262 @ 13497:                     DEF    V p1=V_00c2 a/tf=12 b/format=1 c/ostate=0  type=1 (integer) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1263 @ 13510:                  FINISH ) {lev=3}

   188    found = 1
1264 @ 13511:                  LINE   188 "regression-compile-tmp/nminimo.imp"
1265 @ 13549:                  PUSH   FOUND
1266 @ 13552:                  PUSHI  #0x00000001
1267 @ 13557:                  ASSVAL

   189    v = 1
1268 @ 13558:                  LINE   189 "regression-compile-tmp/nminimo.imp"
1269 @ 13596:                  PUSH   V
1270 @ 13599:                  PUSHI  #0x00000001
1271 @ 13604:                  ASSVAL

   190    read(v) %and out(v) %if sym = '='
1272 @ 13605:                  LINE   190 "regression-compile-tmp/nminimo.imp"
1273 @ 13643:                  PUSH   SYM
1274 @ 13646:                  PUSHI  #0x0000003d
1275 @ 13651:                  JUMPIF # L_0004
1276 @ 13655:                  PUSH   READ
1277 @ 13658:                  PUSH   V
1278 @ 13661:                  ASSPAR
1279 @ 13662:                  CALL  
1280 @ 13663:                  PUSH   OUT
1281 @ 13666:                  PUSH   V
1282 @ 13669:                  ASSPAR
1283 @ 13670:                  CALL  
1284 @ 13671:                  LOCATE L_0004

   191  %end
   192  
1285 @ 13674:                  LINE   191 "regression-compile-tmp/nminimo.imp"
1286 @ 13712:               END    _lev0id0_READIN_INIT {lev=3 --> 2}

   193  %routine lookup
1287 @ 13713:               LINE   193 "regression-compile-tmp/nminimo.imp"
1288 @ 13751:               DEF    LOOKUP (_lev0id0_READIN_LOOKUP) p1=V_00c2 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1289 @ 13769:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1290 @ 13770:                  FINISH ) {lev=3}

   194    pos = namemax+1
1291 @ 13771:                  LINE   194 "regression-compile-tmp/nminimo.imp"
1292 @ 13809:                  PUSH   POS
1293 @ 13812:                  PUSH   NAMEMAX
1294 @ 13815:                  PUSHI  #0x00000001
1295 @ 13820:                  ADD   
1296 @ 13821:                  ASSVAL

   195    pos = pos-1 %until pos = 0  %or name(pos) = curname
1297 @ 13822:                  LINE   195 "regression-compile-tmp/nminimo.imp"
1298 @ 13860:                  LOCATE L_0003
1299 @ 13863:                  PUSH   POS
1300 @ 13866:                  PUSH   POS
1301 @ 13869:                  PUSHI  #0x00000001
1302 @ 13874:                  SUB   
1303 @ 13875:                  ASSVAL
1304 @ 13876:                  PUSH   POS
1305 @ 13879:                  PUSHI  #0x00000000
1306 @ 13884:                  JUMPIF = L_0004
1307 @ 13888:                  PUSH   NAME
1308 @ 13891:                  PUSH   POS
1309 @ 13894:                  ACCESS
1310 @ 13895:                  PUSH   CURNAME
1311 @ 13898:                  JUMPIF = L_0004
1312 @ 13902:                  REPEAT L_0003
1313 @ 13905:                  LOCATE L_0004

   196  %end
   197  
1314 @ 13908:                  LINE   196 "regression-compile-tmp/nminimo.imp"
1315 @ 13946:               END    _lev0id0_READIN_LOOKUP {lev=3 --> 2}

   198  %routine queryname
1316 @ 13947:               LINE   198 "regression-compile-tmp/nminimo.imp"
1317 @ 13985:               DEF    QUERYNAME (_lev0id0_READIN_QUERYNAME) p1=V_00c3 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1318 @ 14006:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1319 @ 14007:                  FINISH ) {lev=3}

   199    newline %if echo # 0
1320 @ 14008:                  LINE   199 "regression-compile-tmp/nminimo.imp"
1321 @ 14046:                  PUSH   ECHO
1322 @ 14049:                  PUSHI  #0x00000000
1323 @ 14054:                  JUMPIF = L_0004
1324 @ 14058:                  PUSH   NEWLINE
1325 @ 14061:                  CALL  
1326 @ 14062:                  LOCATE L_0004

   200    printstring(curname." not known")
1327 @ 14065:                  LINE   200 "regression-compile-tmp/nminimo.imp"
1328 @ 14103:                  PUSH   PRINTSTRING
1329 @ 14106:                  PUSH   CURNAME
1330 @ 14109:                  PUSHS  " not known"
1331 @ 14121:                  CONCAT
1332 @ 14122:                  ASSPAR
1333 @ 14123:                  CALL  

   201    newline
1334 @ 14124:                  LINE   201 "regression-compile-tmp/nminimo.imp"
1335 @ 14162:                  PUSH   NEWLINE
1336 @ 14165:                  CALL  

   202  %end
   203  
1337 @ 14166:                  LINE   202 "regression-compile-tmp/nminimo.imp"
1338 @ 14204:               END    _lev0id0_READIN_QUERYNAME {lev=3 --> 2}

   204  %routine addname
1339 @ 14205:               LINE   204 "regression-compile-tmp/nminimo.imp"
1340 @ 14243:               DEF    ADDNAME (_lev0id0_READIN_ADDNAME) p1=V_00c4 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1341 @ 14262:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1342 @ 14263:                  FINISH ) {lev=3}

   205    namemax = namemax+1
1343 @ 14264:                  LINE   205 "regression-compile-tmp/nminimo.imp"
1344 @ 14302:                  PUSH   NAMEMAX
1345 @ 14305:                  PUSH   NAMEMAX
1346 @ 14308:                  PUSHI  #0x00000001
1347 @ 14313:                  ADD   
1348 @ 14314:                  ASSVAL

   206    name(namemax) = curname
1349 @ 14315:                  LINE   206 "regression-compile-tmp/nminimo.imp"
1350 @ 14353:                  PUSH   NAME
1351 @ 14356:                  PUSH   NAMEMAX
1352 @ 14359:                  ACCESS
1353 @ 14360:                  PUSH   CURNAME
1354 @ 14363:                  ASSVAL

   207  %end
   208  
1355 @ 14364:                  LINE   207 "regression-compile-tmp/nminimo.imp"
1356 @ 14402:               END    _lev0id0_READIN_ADDNAME {lev=3 --> 2}

   209  %routine newname
1357 @ 14403:               LINE   209 "regression-compile-tmp/nminimo.imp"
1358 @ 14441:               DEF    NEWNAME (_lev0id0_READIN_NEWNAME) p1=V_00c5 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1359 @ 14460:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1360 @ 14461:                  FINISH ) {lev=3}

   210    croak("Duplicate: ".curname.". ") %if pos # 0
1361 @ 14462:                  LINE   210 "regression-compile-tmp/nminimo.imp"
1362 @ 14500:                  PUSH   POS
1363 @ 14503:                  PUSHI  #0x00000000
1364 @ 14508:                  JUMPIF = L_0004
1365 @ 14512:                  PUSH   CROAK
1366 @ 14515:                  PUSHS  "Duplicate: "
1367 @ 14528:                  PUSH   CURNAME
1368 @ 14531:                  CONCAT
1369 @ 14532:                  PUSHS  ". "
1370 @ 14536:                  CONCAT
1371 @ 14537:                  ASSPAR
1372 @ 14538:                  CALL  
1373 @ 14539:                  LOCATE L_0004

   211    addname
1374 @ 14542:                  LINE   211 "regression-compile-tmp/nminimo.imp"
1375 @ 14580:                  PUSH   ADDNAME
1376 @ 14583:                  CALL  

   212  %end
   213  
1377 @ 14584:                  LINE   212 "regression-compile-tmp/nminimo.imp"
1378 @ 14622:               END    _lev0id0_READIN_NEWNAME {lev=3 --> 2}

   214  %routine read exp
   215  ! Read logic expression: store as Polish
   216  !   operands represented as name index values (> 0)
   217  !   operators < 0
   218  !  eg A&B ! \A&\B  ==>  1 2 AND NOT 1 NOT NOT 2 NOT AND OR 0
   219  !                       A B  &   \  A  \   \  B  \   &   !
   220  !  note duplication of NOT before and after
   221  
1379 @ 14623:               LINE   214 "regression-compile-tmp/nminimo.imp"
1380 @ 14661:               DEF    READEXP (_lev0id0_READIN_READEXP) p1=V_00c6 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1381 @ 14680:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
1382 @ 14681:                  FINISH ) {lev=3}

   222  %routine read term
1383 @ 14682:                  LINE   222 "regression-compile-tmp/nminimo.imp"
1384 @ 14720:                  DEF    READTERM (_lev0id0_READIN_READEXP_READTERM) p1=V_00c7 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1385 @ 14740:                     START  ( FORMAL PARAMETERS  {lev=4 --> 5, nested=0 --> 1}
1386 @ 14741:                     FINISH ) {lev=4}

   223    read name
1387 @ 14742:                     LINE   223 "regression-compile-tmp/nminimo.imp"
1388 @ 14780:                     PUSH   READNAME
1389 @ 14783:                     CALL  

   224    %if curname # "" %start
1390 @ 14784:                     LINE   224 "regression-compile-tmp/nminimo.imp"
1391 @ 14822:                     PUSH   CURNAME
1392 @ 14825:                     PUSHS  ""
1393 @ 14827:                     JUMPIF = L_0004

   225      pend = sym %if sym >= 'A' %or sym = '('
1394 @ 14831:                     LINE   225 "regression-compile-tmp/nminimo.imp"
1395 @ 14869:                     PUSH   SYM
1396 @ 14872:                     PUSHI  #0x00000041
1397 @ 14877:                     JUMPIF >= L_0008
1398 @ 14881:                     PUSH   SYM
1399 @ 14884:                     PUSHI  #0x00000028
1400 @ 14889:                     JUMPIF # L_0007
1401 @ 14893:                     LOCATE L_0008
1402 @ 14896:                     PUSH   PEND
1403 @ 14899:                     PUSH   SYM
1404 @ 14902:                     ASSVAL
1405 @ 14903:                     LOCATE L_0007

   226      lookup
1406 @ 14906:                     LINE   226 "regression-compile-tmp/nminimo.imp"
1407 @ 14944:                     PUSH   LOOKUP
1408 @ 14947:                     CALL  

   227      queryname %and pos = 1 %if pos = 0
1409 @ 14948:                     LINE   227 "regression-compile-tmp/nminimo.imp"
1410 @ 14986:                     PUSH   POS
1411 @ 14989:                     PUSHI  #0x00000000
1412 @ 14994:                     JUMPIF # L_0007
1413 @ 14998:                     PUSH   QUERYNAME
1414 @ 15001:                     CALL  
1415 @ 15002:                     PUSH   POS
1416 @ 15005:                     PUSHI  #0x00000001
1417 @ 15010:                     ASSVAL
1418 @ 15011:                     LOCATE L_0007

   228      put(pos)
1419 @ 15014:                     LINE   228 "regression-compile-tmp/nminimo.imp"
1420 @ 15052:                     PUSH   PUT
1421 @ 15055:                     PUSH   POS
1422 @ 15058:                     ASSPAR
1423 @ 15059:                     CALL  

   229    %finish %else %if sym = '\' %start
1424 @ 15060:                     LINE   229 "regression-compile-tmp/nminimo.imp"
1425 @ 15098:                     GOTO   L_0003
1426 @ 15101:                     LOCATE L_0004
1427 @ 15104:                     PUSH   SYM
1428 @ 15107:                     PUSHI  #0x0000005c
1429 @ 15112:                     JUMPIF # L_0004

   230      put(not);                           !fore ..
1430 @ 15116:                     LINE   230 "regression-compile-tmp/nminimo.imp"
1431 @ 15154:                     PUSH   PUT
1432 @ 15157:                     PUSHI  #0xffffffff
1433 @ 15162:                     ASSPAR
1434 @ 15163:                     CALL  

   231      read term
1435 @ 15164:                     LINE   231 "regression-compile-tmp/nminimo.imp"
1436 @ 15202:                     PUSH   READTERM
1437 @ 15205:                     CALL  

   232      put(not);                           ! .. as well as aft
1438 @ 15206:                     LINE   232 "regression-compile-tmp/nminimo.imp"
1439 @ 15244:                     PUSH   PUT
1440 @ 15247:                     PUSHI  #0xffffffff
1441 @ 15252:                     ASSPAR
1442 @ 15253:                     CALL  

   233    %finish %else %start
1443 @ 15254:                     LINE   233 "regression-compile-tmp/nminimo.imp"
1444 @ 15292:                     GOTO   L_0003
1445 @ 15295:                     LOCATE L_0004

   234      croak("Faulty format. ") %if sym # '('
1446 @ 15298:                     LINE   234 "regression-compile-tmp/nminimo.imp"
1447 @ 15336:                     PUSH   SYM
1448 @ 15339:                     PUSHI  #0x00000028
1449 @ 15344:                     JUMPIF = L_0007
1450 @ 15348:                     PUSH   CROAK
1451 @ 15351:                     PUSHS  "Faulty format. "
1452 @ 15368:                     ASSPAR
1453 @ 15369:                     CALL  
1454 @ 15370:                     LOCATE L_0007

   235      read exp
1455 @ 15373:                     LINE   235 "regression-compile-tmp/nminimo.imp"
1456 @ 15411:                     PUSH   READEXP
1457 @ 15414:                     CALL  

   236      croak("Missing ')'. ") %if sym # ')'
1458 @ 15415:                     LINE   236 "regression-compile-tmp/nminimo.imp"
1459 @ 15453:                     PUSH   SYM
1460 @ 15456:                     PUSHI  #0x00000029
1461 @ 15461:                     JUMPIF = L_0007
1462 @ 15465:                     PUSH   CROAK
1463 @ 15468:                     PUSHS  "Missing ')'. "
1464 @ 15483:                     ASSPAR
1465 @ 15484:                     CALL  
1466 @ 15485:                     LOCATE L_0007

   237      read sym
1467 @ 15488:                     LINE   237 "regression-compile-tmp/nminimo.imp"
1468 @ 15526:                     PUSH   READSYM
1469 @ 15529:                     CALL  

   238    %finish
1470 @ 15530:                     LINE   238 "regression-compile-tmp/nminimo.imp"
1471 @ 15568:                     LOCATE L_0003

   239  %end
   240  
1472 @ 15571:                     LINE   239 "regression-compile-tmp/nminimo.imp"
1473 @ 15609:                  END    _lev0id0_READIN_READEXP_READTERM {lev=4 --> 3}

   241  %routine read exp1
1474 @ 15610:                  LINE   241 "regression-compile-tmp/nminimo.imp"
1475 @ 15648:                  DEF    READEXP1 (_lev0id0_READIN_READEXP_READEXP1) p1=V_00c8 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
1476 @ 15668:                     START  ( FORMAL PARAMETERS  {lev=4 --> 5, nested=0 --> 1}
1477 @ 15669:                     FINISH ) {lev=4}

   242    read term
1478 @ 15670:                     LINE   242 "regression-compile-tmp/nminimo.imp"
1479 @ 15708:                     PUSH   READTERM
1480 @ 15711:                     CALL  

   243    %while sym = '&' %or sym = '.' %or sym >= 'A' %or sym = '(' %cycle
1481 @ 15712:                     LINE   243 "regression-compile-tmp/nminimo.imp"
1482 @ 15750:                     LOCATE L_0003
1483 @ 15753:                     PUSH   SYM
1484 @ 15756:                     PUSHI  #0x00000026
1485 @ 15761:                     JUMPIF = L_0005
1486 @ 15765:                     PUSH   SYM
1487 @ 15768:                     PUSHI  #0x0000002e
1488 @ 15773:                     JUMPIF = L_0005
1489 @ 15777:                     PUSH   SYM
1490 @ 15780:                     PUSHI  #0x00000041
1491 @ 15785:                     JUMPIF >= L_0005
1492 @ 15789:                     PUSH   SYM
1493 @ 15792:                     PUSHI  #0x00000028
1494 @ 15797:                     JUMPIF # L_0004
1495 @ 15801:                     LOCATE L_0005

   244      read term
1496 @ 15804:                     LINE   244 "regression-compile-tmp/nminimo.imp"
1497 @ 15842:                     PUSH   READTERM
1498 @ 15845:                     CALL  

   245      put(and)
1499 @ 15846:                     LINE   245 "regression-compile-tmp/nminimo.imp"
1500 @ 15884:                     PUSH   PUT
1501 @ 15887:                     PUSHI  #0xfffffffd
1502 @ 15892:                     ASSPAR
1503 @ 15893:                     CALL  

   246    %repeat
1504 @ 15894:                     LINE   246 "regression-compile-tmp/nminimo.imp"
1505 @ 15932:                     REPEAT L_0003
1506 @ 15935:                     LOCATE L_0004

   247  %end
   248  
1507 @ 15938:                     LINE   247 "regression-compile-tmp/nminimo.imp"
1508 @ 15976:                  END    _lev0id0_READIN_READEXP_READEXP1 {lev=4 --> 3}

   249    read exp1
1509 @ 15977:                  LINE   249 "regression-compile-tmp/nminimo.imp"
1510 @ 16015:                  PUSH   READEXP1
1511 @ 16018:                  CALL  

   250    %while sym = '!' %or sym = '+' %cycle
1512 @ 16019:                  LINE   250 "regression-compile-tmp/nminimo.imp"
1513 @ 16057:                  LOCATE L_0003
1514 @ 16060:                  PUSH   SYM
1515 @ 16063:                  PUSHI  #0x00000021
1516 @ 16068:                  JUMPIF = L_0005
1517 @ 16072:                  PUSH   SYM
1518 @ 16075:                  PUSHI  #0x0000002b
1519 @ 16080:                  JUMPIF # L_0004
1520 @ 16084:                  LOCATE L_0005

   251      read exp1
1521 @ 16087:                  LINE   251 "regression-compile-tmp/nminimo.imp"
1522 @ 16125:                  PUSH   READEXP1
1523 @ 16128:                  CALL  

   252      put(or)
1524 @ 16129:                  LINE   252 "regression-compile-tmp/nminimo.imp"
1525 @ 16167:                  PUSH   PUT
1526 @ 16170:                  PUSHI  #0xfffffffe
1527 @ 16175:                  ASSPAR
1528 @ 16176:                  CALL  

   253    %repeat
1529 @ 16177:                  LINE   253 "regression-compile-tmp/nminimo.imp"
1530 @ 16215:                  REPEAT L_0003
1531 @ 16218:                  LOCATE L_0004

   254  %end; !READ EXP
   255  
1532 @ 16221:                  LINE   254 "regression-compile-tmp/nminimo.imp"
1533 @ 16259:               END    _lev0id0_READIN_READEXP {lev=3 --> 2}

   256    namemax = 0;  dp = 1
1534 @ 16260:               LINE   256 "regression-compile-tmp/nminimo.imp"
1535 @ 16298:               PUSH   NAMEMAX
1536 @ 16301:               PUSHI  #0x00000000
1537 @ 16306:               ASSVAL
1538 @ 16307:               LINE   256 "regression-compile-tmp/nminimo.imp"
1539 @ 16345:               PUSH   DP
1540 @ 16348:               PUSHI  #0x00000001
1541 @ 16353:               ASSVAL

   257    pend = 0
   258  ! MODE settings (if any)
1542 @ 16354:               LINE   257 "regression-compile-tmp/nminimo.imp"
1543 @ 16392:               PUSH   PEND
1544 @ 16395:               PUSHI  #0x00000000
1545 @ 16400:               ASSVAL

   259    %cycle
1546 @ 16401:               LINE   259 "regression-compile-tmp/nminimo.imp"
1547 @ 16439:               LOCATE L_0003

   260      read name
1548 @ 16442:               LINE   260 "regression-compile-tmp/nminimo.imp"
1549 @ 16480:               PUSH   READNAME
1550 @ 16483:               CALL  

   261      %stop %if sym = '*'
1551 @ 16484:               LINE   261 "regression-compile-tmp/nminimo.imp"
1552 @ 16522:               PUSH   SYM
1553 @ 16525:               PUSHI  #0x0000002a
1554 @ 16530:               JUMPIF # L_0007
1555 @ 16534:               STOP  
1556 @ 16535:               LOCATE L_0007

   262      %exit %unless curname = "MODE"
1557 @ 16538:               LINE   262 "regression-compile-tmp/nminimo.imp"
1558 @ 16576:               PUSH   CURNAME
1559 @ 16579:               PUSHS  "MODE"
1560 @ 16585:               JUMPIF = L_0007
1561 @ 16589:               GOTO   L_0004
1562 @ 16592:               LOCATE L_0007

   263      printstring("MODE ") %and printsymbol(pend) %if echo=0
1563 @ 16595:               LINE   263 "regression-compile-tmp/nminimo.imp"
1564 @ 16633:               PUSH   ECHO
1565 @ 16636:               PUSHI  #0x00000000
1566 @ 16641:               JUMPIF # L_0007
1567 @ 16645:               PUSH   PRINTSTRING
1568 @ 16648:               PUSHS  "MODE "
1569 @ 16655:               ASSPAR
1570 @ 16656:               CALL  
1571 @ 16657:               PUSH   PRINTSYMBOL
1572 @ 16660:               PUSH   PEND
1573 @ 16663:               ASSPAR
1574 @ 16664:               CALL  
1575 @ 16665:               LOCATE L_0007

   264      echo = echo-2
1576 @ 16668:               LINE   264 "regression-compile-tmp/nminimo.imp"
1577 @ 16706:               PUSH   ECHO
1578 @ 16709:               PUSH   ECHO
1579 @ 16712:               PUSHI  #0x00000002
1580 @ 16717:               SUB   
1581 @ 16718:               ASSVAL

   265      %cycle
1582 @ 16719:               LINE   265 "regression-compile-tmp/nminimo.imp"
1583 @ 16757:               LOCATE L_0006

   266        read name
1584 @ 16760:               LINE   266 "regression-compile-tmp/nminimo.imp"
1585 @ 16798:               PUSH   READNAME
1586 @ 16801:               CALL  

   267        found = 0
1587 @ 16802:               LINE   267 "regression-compile-tmp/nminimo.imp"
1588 @ 16840:               PUSH   FOUND
1589 @ 16843:               PUSHI  #0x00000000
1590 @ 16848:               ASSVAL

   268        init(nin) %if curname = "NIN"
1591 @ 16849:               LINE   268 "regression-compile-tmp/nminimo.imp"
1592 @ 16887:               PUSH   CURNAME
1593 @ 16890:               PUSHS  "NIN"
1594 @ 16895:               JUMPIF # L_000a
1595 @ 16899:               PUSH   INIT
1596 @ 16902:               PUSH   NIN
1597 @ 16905:               ASSPAR
1598 @ 16906:               CALL  
1599 @ 16907:               LOCATE L_000a

   269        init(nout) %if curname = "NOUT"
1600 @ 16910:               LINE   269 "regression-compile-tmp/nminimo.imp"
1601 @ 16948:               PUSH   CURNAME
1602 @ 16951:               PUSHS  "NOUT"
1603 @ 16957:               JUMPIF # L_000a
1604 @ 16961:               PUSH   INIT
1605 @ 16964:               PUSH   NOUT
1606 @ 16967:               ASSPAR
1607 @ 16968:               CALL  
1608 @ 16969:               LOCATE L_000a

   270        init(min) %if curname = "MIN"
1609 @ 16972:               LINE   270 "regression-compile-tmp/nminimo.imp"
1610 @ 17010:               PUSH   CURNAME
1611 @ 17013:               PUSHS  "MIN"
1612 @ 17018:               JUMPIF # L_000a
1613 @ 17022:               PUSH   INIT
1614 @ 17025:               PUSH   MIN
1615 @ 17028:               ASSPAR
1616 @ 17029:               CALL  
1617 @ 17030:               LOCATE L_000a

   271        init(inc) %if curname = "INC"
1618 @ 17033:               LINE   271 "regression-compile-tmp/nminimo.imp"
1619 @ 17071:               PUSH   CURNAME
1620 @ 17074:               PUSHS  "INC"
1621 @ 17079:               JUMPIF # L_000a
1622 @ 17083:               PUSH   INIT
1623 @ 17086:               PUSH   INC
1624 @ 17089:               ASSPAR
1625 @ 17090:               CALL  
1626 @ 17091:               LOCATE L_000a

   272        init(echo) %if curname = "ECHO"
1627 @ 17094:               LINE   272 "regression-compile-tmp/nminimo.imp"
1628 @ 17132:               PUSH   CURNAME
1629 @ 17135:               PUSHS  "ECHO"
1630 @ 17141:               JUMPIF # L_000a
1631 @ 17145:               PUSH   INIT
1632 @ 17148:               PUSH   ECHO
1633 @ 17151:               ASSPAR
1634 @ 17152:               CALL  
1635 @ 17153:               LOCATE L_000a

   273        init(squash) %if curname = "SQUASH"
1636 @ 17156:               LINE   273 "regression-compile-tmp/nminimo.imp"
1637 @ 17194:               PUSH   CURNAME
1638 @ 17197:               PUSHS  "SQUASH"
1639 @ 17205:               JUMPIF # L_000a
1640 @ 17209:               PUSH   INIT
1641 @ 17212:               PUSH   SQUASH
1642 @ 17215:               ASSPAR
1643 @ 17216:               CALL  
1644 @ 17217:               LOCATE L_000a

   274        init(check) %if curname = "CHECK"
1645 @ 17220:               LINE   274 "regression-compile-tmp/nminimo.imp"
1646 @ 17258:               PUSH   CURNAME
1647 @ 17261:               PUSHS  "CHECK"
1648 @ 17268:               JUMPIF # L_000a
1649 @ 17272:               PUSH   INIT
1650 @ 17275:               PUSH   CHECK
1651 @ 17278:               ASSPAR
1652 @ 17279:               CALL  
1653 @ 17280:               LOCATE L_000a

   275        init(mon) %if curname = "MON"
1654 @ 17283:               LINE   275 "regression-compile-tmp/nminimo.imp"
1655 @ 17321:               PUSH   CURNAME
1656 @ 17324:               PUSHS  "MON"
1657 @ 17329:               JUMPIF # L_000a
1658 @ 17333:               PUSH   INIT
1659 @ 17336:               PUSH   MON
1660 @ 17339:               ASSPAR
1661 @ 17340:               CALL  
1662 @ 17341:               LOCATE L_000a

   276        init(single) %if curname = "SINGLE"
1663 @ 17344:               LINE   276 "regression-compile-tmp/nminimo.imp"
1664 @ 17382:               PUSH   CURNAME
1665 @ 17385:               PUSHS  "SINGLE"
1666 @ 17393:               JUMPIF # L_000a
1667 @ 17397:               PUSH   INIT
1668 @ 17400:               PUSH   SINGLE
1669 @ 17403:               ASSPAR
1670 @ 17404:               CALL  
1671 @ 17405:               LOCATE L_000a

   277        init(tabin) %if curname = "TABIN"
1672 @ 17408:               LINE   277 "regression-compile-tmp/nminimo.imp"
1673 @ 17446:               PUSH   CURNAME
1674 @ 17449:               PUSHS  "TABIN"
1675 @ 17456:               JUMPIF # L_000a
1676 @ 17460:               PUSH   INIT
1677 @ 17463:               PUSH   TABIN
1678 @ 17466:               ASSPAR
1679 @ 17467:               CALL  
1680 @ 17468:               LOCATE L_000a

   278        init(tabin) %and tabin = 1-tabin %if curname="EQUIN"
1681 @ 17471:               LINE   278 "regression-compile-tmp/nminimo.imp"
1682 @ 17509:               PUSH   CURNAME
1683 @ 17512:               PUSHS  "EQUIN"
1684 @ 17519:               JUMPIF # L_000a
1685 @ 17523:               PUSH   INIT
1686 @ 17526:               PUSH   TABIN
1687 @ 17529:               ASSPAR
1688 @ 17530:               CALL  
1689 @ 17531:               PUSH   TABIN
1690 @ 17534:               PUSHI  #0x00000001
1691 @ 17539:               PUSH   TABIN
1692 @ 17542:               SUB   
1693 @ 17543:               ASSVAL
1694 @ 17544:               LOCATE L_000a

   279        printsymbol('?') %if found = 0
1695 @ 17547:               LINE   279 "regression-compile-tmp/nminimo.imp"
1696 @ 17585:               PUSH   FOUND
1697 @ 17588:               PUSHI  #0x00000000
1698 @ 17593:               JUMPIF # L_000a
1699 @ 17597:               PUSH   PRINTSYMBOL
1700 @ 17600:               PUSHI  #0x0000003f
1701 @ 17605:               ASSPAR
1702 @ 17606:               CALL  
1703 @ 17607:               LOCATE L_000a

   280      %repeat %until sym # ','
1704 @ 17610:               LINE   280 "regression-compile-tmp/nminimo.imp"
1705 @ 17648:               PUSH   SYM
1706 @ 17651:               PUSHI  #0x0000002c
1707 @ 17656:               JUMPIF # L_0007
1708 @ 17660:               REPEAT L_0006
1709 @ 17663:               LOCATE L_0007

   281      %if echo<0 %start
1710 @ 17666:               LINE   281 "regression-compile-tmp/nminimo.imp"
1711 @ 17704:               PUSH   ECHO
1712 @ 17707:               PUSHI  #0x00000000
1713 @ 17712:               JUMPIF >= L_0007

   282        echo = echo+2
1714 @ 17716:               LINE   282 "regression-compile-tmp/nminimo.imp"
1715 @ 17754:               PUSH   ECHO
1716 @ 17757:               PUSH   ECHO
1717 @ 17760:               PUSHI  #0x00000002
1718 @ 17765:               ADD   
1719 @ 17766:               ASSVAL

   283        newline %if echo=0
1720 @ 17767:               LINE   283 "regression-compile-tmp/nminimo.imp"
1721 @ 17805:               PUSH   ECHO
1722 @ 17808:               PUSHI  #0x00000000
1723 @ 17813:               JUMPIF # L_000a
1724 @ 17817:               PUSH   NEWLINE
1725 @ 17820:               CALL  
1726 @ 17821:               LOCATE L_000a

   284      %finish
1727 @ 17824:               LINE   284 "regression-compile-tmp/nminimo.imp"
1728 @ 17862:               LOCATE L_0007

   285    %repeat
   286  ! INput list
1729 @ 17865:               LINE   285 "regression-compile-tmp/nminimo.imp"
1730 @ 17903:               REPEAT L_0003
1731 @ 17906:               LOCATE L_0004

   287    croak("Keyword ".curname."? ") %if curname # "IN"
1732 @ 17909:               LINE   287 "regression-compile-tmp/nminimo.imp"
1733 @ 17947:               PUSH   CURNAME
1734 @ 17950:               PUSHS  "IN"
1735 @ 17954:               JUMPIF = L_0004
1736 @ 17958:               PUSH   CROAK
1737 @ 17961:               PUSHS  "Keyword "
1738 @ 17971:               PUSH   CURNAME
1739 @ 17974:               CONCAT
1740 @ 17975:               PUSHS  "? "
1741 @ 17979:               CONCAT
1742 @ 17980:               ASSPAR
1743 @ 17981:               CALL  
1744 @ 17982:               LOCATE L_0004

   288    pend = sym %if pend=0
1745 @ 17985:               LINE   288 "regression-compile-tmp/nminimo.imp"
1746 @ 18023:               PUSH   PEND
1747 @ 18026:               PUSHI  #0x00000000
1748 @ 18031:               JUMPIF # L_0004
1749 @ 18035:               PUSH   PEND
1750 @ 18038:               PUSH   SYM
1751 @ 18041:               ASSVAL
1752 @ 18042:               LOCATE L_0004

   289    bit = 1;  negin = 0;  ignorin = 0
1753 @ 18045:               LINE   289 "regression-compile-tmp/nminimo.imp"
1754 @ 18083:               PUSH   BIT
1755 @ 18086:               PUSHI  #0x00000001
1756 @ 18091:               ASSVAL
1757 @ 18092:               LINE   289 "regression-compile-tmp/nminimo.imp"
1758 @ 18130:               PUSH   NEGIN
1759 @ 18133:               PUSHI  #0x00000000
1760 @ 18138:               ASSVAL
1761 @ 18139:               LINE   289 "regression-compile-tmp/nminimo.imp"
1762 @ 18177:               PUSH   IGNORIN
1763 @ 18180:               PUSHI  #0x00000000
1764 @ 18185:               ASSVAL

   290    %cycle
1765 @ 18186:               LINE   290 "regression-compile-tmp/nminimo.imp"
1766 @ 18224:               LOCATE L_0003

   291      croak("Too many inputs.") %if bit = 0
1767 @ 18227:               LINE   291 "regression-compile-tmp/nminimo.imp"
1768 @ 18265:               PUSH   BIT
1769 @ 18268:               PUSHI  #0x00000000
1770 @ 18273:               JUMPIF # L_0007
1771 @ 18277:               PUSH   CROAK
1772 @ 18280:               PUSHS  "Too many inputs."
1773 @ 18298:               ASSPAR
1774 @ 18299:               CALL  
1775 @ 18300:               LOCATE L_0007

   292      read sym %until sym>' ' %and sym#','
1776 @ 18303:               LINE   292 "regression-compile-tmp/nminimo.imp"
1777 @ 18341:               LOCATE L_0006
1778 @ 18344:               PUSH   READSYM
1779 @ 18347:               CALL  
1780 @ 18348:               PUSH   SYM
1781 @ 18351:               PUSHI  #0x00000020
1782 @ 18356:               JUMPIF <= L_0008
1783 @ 18360:               PUSH   SYM
1784 @ 18363:               PUSHI  #0x0000002c
1785 @ 18368:               JUMPIF # L_0007
1786 @ 18372:               LOCATE L_0008
1787 @ 18375:               REPEAT L_0006
1788 @ 18378:               LOCATE L_0007

   293      %if sym = '-' %start
1789 @ 18381:               LINE   293 "regression-compile-tmp/nminimo.imp"
1790 @ 18419:               PUSH   SYM
1791 @ 18422:               PUSHI  #0x0000002d
1792 @ 18427:               JUMPIF # L_0007

   294        ignorin = ignorin+bit
1793 @ 18431:               LINE   294 "regression-compile-tmp/nminimo.imp"
1794 @ 18469:               PUSH   IGNORIN
1795 @ 18472:               PUSH   IGNORIN
1796 @ 18475:               PUSH   BIT
1797 @ 18478:               ADD   
1798 @ 18479:               ASSVAL

   295        curname = "-"
1799 @ 18480:               LINE   295 "regression-compile-tmp/nminimo.imp"
1800 @ 18518:               PUSH   CURNAME
1801 @ 18521:               PUSHS  "-"
1802 @ 18524:               ASSVAL

   296        read sym
1803 @ 18525:               LINE   296 "regression-compile-tmp/nminimo.imp"
1804 @ 18563:               PUSH   READSYM
1805 @ 18566:               CALL  

   297      %finish %else %start
1806 @ 18567:               LINE   297 "regression-compile-tmp/nminimo.imp"
1807 @ 18605:               GOTO   L_0006
1808 @ 18608:               LOCATE L_0007

   298        %if sym = '\' %then negin = negin+bit %c
   299        %else pend = sym
1809 @ 18611:               LINE   298 "regression-compile-tmp/nminimo.imp"
1810 @ 18649:               PUSH   SYM
1811 @ 18652:               PUSHI  #0x0000005c
1812 @ 18657:               JUMPIF # L_000a
1813 @ 18661:               PUSH   NEGIN
1814 @ 18664:               PUSH   NEGIN
1815 @ 18667:               PUSH   BIT
1816 @ 18670:               ADD   
1817 @ 18671:               ASSVAL
1818 @ 18672:               GOTO   L_0009
1819 @ 18675:               LOCATE L_000a
1820 @ 18678:               PUSH   PEND
1821 @ 18681:               PUSH   SYM
1822 @ 18684:               ASSVAL
1823 @ 18685:               LOCATE L_0009

   300        read name
1824 @ 18688:               LINE   300 "regression-compile-tmp/nminimo.imp"
1825 @ 18726:               PUSH   READNAME
1826 @ 18729:               CALL  

   301        lookup
1827 @ 18730:               LINE   301 "regression-compile-tmp/nminimo.imp"
1828 @ 18768:               PUSH   LOOKUP
1829 @ 18771:               CALL  

   302      %finish
1830 @ 18772:               LINE   302 "regression-compile-tmp/nminimo.imp"
1831 @ 18810:               LOCATE L_0006

   303      newname
1832 @ 18813:               LINE   303 "regression-compile-tmp/nminimo.imp"
1833 @ 18851:               PUSH   NEWNAME
1834 @ 18854:               CALL  

   304      exp(namemax) = bit
1835 @ 18855:               LINE   304 "regression-compile-tmp/nminimo.imp"
1836 @ 18893:               PUSH   EXP
1837 @ 18896:               PUSH   NAMEMAX
1838 @ 18899:               ACCESS
1839 @ 18900:               PUSH   BIT
1840 @ 18903:               ASSVAL

   305      bit = bit<<1
1841 @ 18904:               LINE   305 "regression-compile-tmp/nminimo.imp"
1842 @ 18942:               PUSH   BIT
1843 @ 18945:               PUSH   BIT
1844 @ 18948:               PUSHI  #0x00000001
1845 @ 18953:               LSH   
1846 @ 18954:               ASSVAL

   306    %repeat %until sym # ','
1847 @ 18955:               LINE   306 "regression-compile-tmp/nminimo.imp"
1848 @ 18993:               PUSH   SYM
1849 @ 18996:               PUSHI  #0x0000002c
1850 @ 19001:               JUMPIF # L_0004
1851 @ 19005:               REPEAT L_0003
1852 @ 19008:               LOCATE L_0004

   307    inmax = namemax
1853 @ 19011:               LINE   307 "regression-compile-tmp/nminimo.imp"
1854 @ 19049:               PUSH   INMAX
1855 @ 19052:               PUSH   NAMEMAX
1856 @ 19055:               ASSVAL

   308    negin = \negin %if nin # 0
   309  ! logic equations
1857 @ 19056:               LINE   308 "regression-compile-tmp/nminimo.imp"
1858 @ 19094:               PUSH   NIN
1859 @ 19097:               PUSHI  #0x00000000
1860 @ 19102:               JUMPIF = L_0004
1861 @ 19106:               PUSH   NEGIN
1862 @ 19109:               PUSH   NEGIN
1863 @ 19112:               NOT   
1864 @ 19113:               ASSVAL
1865 @ 19114:               LOCATE L_0004

   310  %if tabin = 0 %start
1866 @ 19117:               LINE   310 "regression-compile-tmp/nminimo.imp"
1867 @ 19155:               PUSH   TABIN
1868 @ 19158:               PUSHI  #0x00000000
1869 @ 19163:               JUMPIF # L_0004

   311    %cycle
1870 @ 19167:               LINE   311 "regression-compile-tmp/nminimo.imp"
1871 @ 19205:               LOCATE L_0006

   312      read name
1872 @ 19208:               LINE   312 "regression-compile-tmp/nminimo.imp"
1873 @ 19246:               PUSH   READNAME
1874 @ 19249:               CALL  

   313      %exit %if sym # '='
1875 @ 19250:               LINE   313 "regression-compile-tmp/nminimo.imp"
1876 @ 19288:               PUSH   SYM
1877 @ 19291:               PUSHI  #0x0000003d
1878 @ 19296:               JUMPIF = L_000a
1879 @ 19300:               GOTO   L_0007
1880 @ 19303:               LOCATE L_000a

   314      lookup
1881 @ 19306:               LINE   314 "regression-compile-tmp/nminimo.imp"
1882 @ 19344:               PUSH   LOOKUP
1883 @ 19347:               CALL  

   315      pos = 0 %if pos <= inmax
1884 @ 19348:               LINE   315 "regression-compile-tmp/nminimo.imp"
1885 @ 19386:               PUSH   POS
1886 @ 19389:               PUSH   INMAX
1887 @ 19392:               JUMPIF > L_000a
1888 @ 19396:               PUSH   POS
1889 @ 19399:               PUSHI  #0x00000000
1890 @ 19404:               ASSVAL
1891 @ 19405:               LOCATE L_000a

   316      newname
1892 @ 19408:               LINE   316 "regression-compile-tmp/nminimo.imp"
1893 @ 19446:               PUSH   NEWNAME
1894 @ 19449:               CALL  

   317      exp(namemax) = dp;                  !start of Polish representation
1895 @ 19450:               LINE   317 "regression-compile-tmp/nminimo.imp"
1896 @ 19488:               PUSH   EXP
1897 @ 19491:               PUSH   NAMEMAX
1898 @ 19494:               ACCESS
1899 @ 19495:               PUSH   DP
1900 @ 19498:               ASSVAL

   318      namemax = namemax-1;                !hide LH name to exclude self-ref
1901 @ 19499:               LINE   318 "regression-compile-tmp/nminimo.imp"
1902 @ 19537:               PUSH   NAMEMAX
1903 @ 19540:               PUSH   NAMEMAX
1904 @ 19543:               PUSHI  #0x00000001
1905 @ 19548:               SUB   
1906 @ 19549:               ASSVAL

   319      read exp
1907 @ 19550:               LINE   319 "regression-compile-tmp/nminimo.imp"
1908 @ 19588:               PUSH   READEXP
1909 @ 19591:               CALL  

   320      namemax = namemax+1;                !restore LH name
1910 @ 19592:               LINE   320 "regression-compile-tmp/nminimo.imp"
1911 @ 19630:               PUSH   NAMEMAX
1912 @ 19633:               PUSH   NAMEMAX
1913 @ 19636:               PUSHI  #0x00000001
1914 @ 19641:               ADD   
1915 @ 19642:               ASSVAL

   321      put(0);                             !terminator
1916 @ 19643:               LINE   321 "regression-compile-tmp/nminimo.imp"
1917 @ 19681:               PUSH   PUT
1918 @ 19684:               PUSHI  #0x00000000
1919 @ 19689:               ASSPAR
1920 @ 19690:               CALL  

   322      croak("Faulty format. ") %if sym # nl
1921 @ 19691:               LINE   322 "regression-compile-tmp/nminimo.imp"
1922 @ 19729:               PUSH   SYM
1923 @ 19732:               PUSHI  #0x0000000a
1924 @ 19737:               JUMPIF = L_000a
1925 @ 19741:               PUSH   CROAK
1926 @ 19744:               PUSHS  "Faulty format. "
1927 @ 19761:               ASSPAR
1928 @ 19762:               CALL  
1929 @ 19763:               LOCATE L_000a

   323    %repeat
1930 @ 19766:               LINE   323 "regression-compile-tmp/nminimo.imp"
1931 @ 19804:               REPEAT L_0006
1932 @ 19807:               LOCATE L_0007

   324  %finish %else %start;                   !tabular input
1933 @ 19810:               LINE   324 "regression-compile-tmp/nminimo.imp"
1934 @ 19848:               GOTO   L_0003
1935 @ 19851:               LOCATE L_0004

   325    pos1 = namebound+1;  outmax = 0
1936 @ 19854:               LINE   325 "regression-compile-tmp/nminimo.imp"
1937 @ 19892:               PUSH   POS1
1938 @ 19895:               PUSHI  #0x00000100
1939 @ 19900:               PUSHI  #0x00000001
1940 @ 19905:               ADD   
1941 @ 19906:               ASSVAL
1942 @ 19907:               LINE   325 "regression-compile-tmp/nminimo.imp"
1943 @ 19945:               PUSH   OUTMAX
1944 @ 19948:               PUSHI  #0x00000000
1945 @ 19953:               ASSVAL

   326    %cycle
1946 @ 19954:               LINE   326 "regression-compile-tmp/nminimo.imp"
1947 @ 19992:               LOCATE L_0006

   327      read sym %until sym > ' '
1948 @ 19995:               LINE   327 "regression-compile-tmp/nminimo.imp"
1949 @ 20033:               LOCATE L_0009
1950 @ 20036:               PUSH   READSYM
1951 @ 20039:               CALL  
1952 @ 20040:               PUSH   SYM
1953 @ 20043:               PUSHI  #0x00000020
1954 @ 20048:               JUMPIF > L_000a
1955 @ 20052:               REPEAT L_0009
1956 @ 20055:               LOCATE L_000a

   328      pend=sym %and %exit %if sym&95 = 'O'
1957 @ 20058:               LINE   328 "regression-compile-tmp/nminimo.imp"
1958 @ 20096:               PUSH   SYM
1959 @ 20099:               PUSHI  #0x0000005f
1960 @ 20104:               AND   
1961 @ 20105:               PUSHI  #0x0000004f
1962 @ 20110:               JUMPIF # L_000a
1963 @ 20114:               PUSH   PEND
1964 @ 20117:               PUSH   SYM
1965 @ 20120:               ASSVAL
1966 @ 20121:               GOTO   L_0007
1967 @ 20124:               LOCATE L_000a

   329      pos1 = pos1-1
1968 @ 20127:               LINE   329 "regression-compile-tmp/nminimo.imp"
1969 @ 20165:               PUSH   POS1
1970 @ 20168:               PUSH   POS1
1971 @ 20171:               PUSHI  #0x00000001
1972 @ 20176:               SUB   
1973 @ 20177:               ASSVAL

   330      croak("Too many table entries") %if pos1 = namemax
1974 @ 20178:               LINE   330 "regression-compile-tmp/nminimo.imp"
1975 @ 20216:               PUSH   POS1
1976 @ 20219:               PUSH   NAMEMAX
1977 @ 20222:               JUMPIF # L_000a
1978 @ 20226:               PUSH   CROAK
1979 @ 20229:               PUSHS  "Too many table entries"
1980 @ 20253:               ASSPAR
1981 @ 20254:               CALL  
1982 @ 20255:               LOCATE L_000a

   331      exp(pos1) = 0
1983 @ 20258:               LINE   331 "regression-compile-tmp/nminimo.imp"
1984 @ 20296:               PUSH   EXP
1985 @ 20299:               PUSH   POS1
1986 @ 20302:               ACCESS
1987 @ 20303:               PUSHI  #0x00000000
1988 @ 20308:               ASSVAL

   332      first = 1
1989 @ 20309:               LINE   332 "regression-compile-tmp/nminimo.imp"
1990 @ 20347:               PUSH   FIRST
1991 @ 20350:               PUSHI  #0x00000001
1992 @ 20355:               ASSVAL

   333      %for pos = 1,1,inmax %cycle
1993 @ 20356:               LINE   333 "regression-compile-tmp/nminimo.imp"
1994 @ 20394:               PUSH   POS
1995 @ 20397:               PUSHI  #0x00000001
1996 @ 20402:               PUSH   INMAX
1997 @ 20405:               PUSHI  #0x00000001
1998 @ 20410:               FOR    L_0009

   334        %if ignorin>>(pos-1)&1 = 0 %c
   335        %and (sym = '0' %or sym = '1') %start
1999 @ 20413:               LINE   334 "regression-compile-tmp/nminimo.imp"
2000 @ 20451:               PUSH   IGNORIN
2001 @ 20454:               PUSH   POS
2002 @ 20457:               PUSHI  #0x00000001
2003 @ 20462:               SUB   
2004 @ 20463:               RSH   
2005 @ 20464:               PUSHI  #0x00000001
2006 @ 20469:               AND   
2007 @ 20470:               PUSHI  #0x00000000
2008 @ 20475:               JUMPIF # L_000d
2009 @ 20479:               PUSH   SYM
2010 @ 20482:               PUSHI  #0x00000030
2011 @ 20487:               JUMPIF = L_000e
2012 @ 20491:               PUSH   SYM
2013 @ 20494:               PUSHI  #0x00000031
2014 @ 20499:               JUMPIF # L_000d
2015 @ 20503:               LOCATE L_000e

   336          %if sym = '1' %then put(pos) %c
   337          %else put(not) %and put(pos) %and put(not)
2016 @ 20506:               LINE   336 "regression-compile-tmp/nminimo.imp"
2017 @ 20544:               PUSH   SYM
2018 @ 20547:               PUSHI  #0x00000031
2019 @ 20552:               JUMPIF # L_0010
2020 @ 20556:               PUSH   PUT
2021 @ 20559:               PUSH   POS
2022 @ 20562:               ASSPAR
2023 @ 20563:               CALL  
2024 @ 20564:               GOTO   L_000f
2025 @ 20567:               LOCATE L_0010
2026 @ 20570:               PUSH   PUT
2027 @ 20573:               PUSHI  #0xffffffff
2028 @ 20578:               ASSPAR
2029 @ 20579:               CALL  
2030 @ 20580:               PUSH   PUT
2031 @ 20583:               PUSH   POS
2032 @ 20586:               ASSPAR
2033 @ 20587:               CALL  
2034 @ 20588:               PUSH   PUT
2035 @ 20591:               PUSHI  #0xffffffff
2036 @ 20596:               ASSPAR
2037 @ 20597:               CALL  
2038 @ 20598:               LOCATE L_000f

   338          put(and) %if first = 0
2039 @ 20601:               LINE   338 "regression-compile-tmp/nminimo.imp"
2040 @ 20639:               PUSH   FIRST
2041 @ 20642:               PUSHI  #0x00000000
2042 @ 20647:               JUMPIF # L_0010
2043 @ 20651:               PUSH   PUT
2044 @ 20654:               PUSHI  #0xfffffffd
2045 @ 20659:               ASSPAR
2046 @ 20660:               CALL  
2047 @ 20661:               LOCATE L_0010

   339          first = 0
2048 @ 20664:               LINE   339 "regression-compile-tmp/nminimo.imp"
2049 @ 20702:               PUSH   FIRST
2050 @ 20705:               PUSHI  #0x00000000
2051 @ 20710:               ASSVAL

   340        %finish
2052 @ 20711:               LINE   340 "regression-compile-tmp/nminimo.imp"
2053 @ 20749:               LOCATE L_000d

   341        read sym %until sym # ' '
2054 @ 20752:               LINE   341 "regression-compile-tmp/nminimo.imp"
2055 @ 20790:               LOCATE L_000c
2056 @ 20793:               PUSH   READSYM
2057 @ 20796:               CALL  
2058 @ 20797:               PUSH   SYM
2059 @ 20800:               PUSHI  #0x00000020
2060 @ 20805:               JUMPIF # L_000d
2061 @ 20809:               REPEAT L_000c
2062 @ 20812:               LOCATE L_000d

   342      %repeat
2063 @ 20815:               LINE   342 "regression-compile-tmp/nminimo.imp"
2064 @ 20853:               REPEAT L_0009
2065 @ 20856:               LOCATE L_000a

   343      put(0)
2066 @ 20859:               LINE   343 "regression-compile-tmp/nminimo.imp"
2067 @ 20897:               PUSH   PUT
2068 @ 20900:               PUSHI  #0x00000000
2069 @ 20905:               ASSPAR
2070 @ 20906:               CALL  

   344      bit = 1;  namemax = inmax
2071 @ 20907:               LINE   344 "regression-compile-tmp/nminimo.imp"
2072 @ 20945:               PUSH   BIT
2073 @ 20948:               PUSHI  #0x00000001
2074 @ 20953:               ASSVAL
2075 @ 20954:               LINE   344 "regression-compile-tmp/nminimo.imp"
2076 @ 20992:               PUSH   NAMEMAX
2077 @ 20995:               PUSH   INMAX
2078 @ 20998:               ASSVAL

   345      %while sym # nl %cycle
2079 @ 20999:               LINE   345 "regression-compile-tmp/nminimo.imp"
2080 @ 21037:               LOCATE L_0009
2081 @ 21040:               PUSH   SYM
2082 @ 21043:               PUSHI  #0x0000000a
2083 @ 21048:               JUMPIF = L_000a

   346        croak("Faulty entry. ") %if (sym # '0' %and sym # '1') %c
   347             %or namemax = outmax
2084 @ 21052:               LINE   346 "regression-compile-tmp/nminimo.imp"
2085 @ 21090:               PUSH   SYM
2086 @ 21093:               PUSHI  #0x00000030
2087 @ 21098:               JUMPIF = L_000f
2088 @ 21102:               PUSH   SYM
2089 @ 21105:               PUSHI  #0x00000031
2090 @ 21110:               JUMPIF # L_000e
2091 @ 21114:               LOCATE L_000f
2092 @ 21117:               PUSH   NAMEMAX
2093 @ 21120:               PUSH   OUTMAX
2094 @ 21123:               JUMPIF # L_000d
2095 @ 21127:               LOCATE L_000e
2096 @ 21130:               PUSH   CROAK
2097 @ 21133:               PUSHS  "Faulty entry. "
2098 @ 21149:               ASSPAR
2099 @ 21150:               CALL  
2100 @ 21151:               LOCATE L_000d

   348        exp(pos1) = exp(pos1)!bit %if sym = '1'
2101 @ 21154:               LINE   348 "regression-compile-tmp/nminimo.imp"
2102 @ 21192:               PUSH   SYM
2103 @ 21195:               PUSHI  #0x00000031
2104 @ 21200:               JUMPIF # L_000d
2105 @ 21204:               PUSH   EXP
2106 @ 21207:               PUSH   POS1
2107 @ 21210:               ACCESS
2108 @ 21211:               PUSH   EXP
2109 @ 21214:               PUSH   POS1
2110 @ 21217:               ACCESS
2111 @ 21218:               PUSH   BIT
2112 @ 21221:               OR    
2113 @ 21222:               ASSVAL
2114 @ 21223:               LOCATE L_000d

   349        bit = bit<<1;  namemax = namemax+1
2115 @ 21226:               LINE   349 "regression-compile-tmp/nminimo.imp"
2116 @ 21264:               PUSH   BIT
2117 @ 21267:               PUSH   BIT
2118 @ 21270:               PUSHI  #0x00000001
2119 @ 21275:               LSH   
2120 @ 21276:               ASSVAL
2121 @ 21277:               LINE   349 "regression-compile-tmp/nminimo.imp"
2122 @ 21315:               PUSH   NAMEMAX
2123 @ 21318:               PUSH   NAMEMAX
2124 @ 21321:               PUSHI  #0x00000001
2125 @ 21326:               ADD   
2126 @ 21327:               ASSVAL

   350        read sym %until sym # ' '
2127 @ 21328:               LINE   350 "regression-compile-tmp/nminimo.imp"
2128 @ 21366:               LOCATE L_000c
2129 @ 21369:               PUSH   READSYM
2130 @ 21372:               CALL  
2131 @ 21373:               PUSH   SYM
2132 @ 21376:               PUSHI  #0x00000020
2133 @ 21381:               JUMPIF # L_000d
2134 @ 21385:               REPEAT L_000c
2135 @ 21388:               LOCATE L_000d

   351      %repeat
2136 @ 21391:               LINE   351 "regression-compile-tmp/nminimo.imp"
2137 @ 21429:               REPEAT L_0009
2138 @ 21432:               LOCATE L_000a

   352      outmax = namemax %if outmax = 0
2139 @ 21435:               LINE   352 "regression-compile-tmp/nminimo.imp"
2140 @ 21473:               PUSH   OUTMAX
2141 @ 21476:               PUSHI  #0x00000000
2142 @ 21481:               JUMPIF # L_000a
2143 @ 21485:               PUSH   OUTMAX
2144 @ 21488:               PUSH   NAMEMAX
2145 @ 21491:               ASSVAL
2146 @ 21492:               LOCATE L_000a

   353      croak("Faulty entry. ") %if outmax # namemax
2147 @ 21495:               LINE   353 "regression-compile-tmp/nminimo.imp"
2148 @ 21533:               PUSH   OUTMAX
2149 @ 21536:               PUSH   NAMEMAX
2150 @ 21539:               JUMPIF = L_000a
2151 @ 21543:               PUSH   CROAK
2152 @ 21546:               PUSHS  "Faulty entry. "
2153 @ 21562:               ASSPAR
2154 @ 21563:               CALL  
2155 @ 21564:               LOCATE L_000a

   354    %repeat
2156 @ 21567:               LINE   354 "regression-compile-tmp/nminimo.imp"
2157 @ 21605:               REPEAT L_0006
2158 @ 21608:               LOCATE L_0007

   355    bit = 1
2159 @ 21611:               LINE   355 "regression-compile-tmp/nminimo.imp"
2160 @ 21649:               PUSH   BIT
2161 @ 21652:               PUSHI  #0x00000001
2162 @ 21657:               ASSVAL

   356    bit = \0 %and namemax = inmax+1 %if check # 0
2163 @ 21658:               LINE   356 "regression-compile-tmp/nminimo.imp"
2164 @ 21696:               PUSH   CHECK
2165 @ 21699:               PUSHI  #0x00000000
2166 @ 21704:               JUMPIF = L_0007
2167 @ 21708:               PUSH   BIT
2168 @ 21711:               PUSHI  #0x00000000
2169 @ 21716:               NOT   
2170 @ 21717:               ASSVAL
2171 @ 21718:               PUSH   NAMEMAX
2172 @ 21721:               PUSH   INMAX
2173 @ 21724:               PUSHI  #0x00000001
2174 @ 21729:               ADD   
2175 @ 21730:               ASSVAL
2176 @ 21731:               LOCATE L_0007

   357    %for pos = inmax+1,1,namemax %cycle
2177 @ 21734:               LINE   357 "regression-compile-tmp/nminimo.imp"
2178 @ 21772:               PUSH   POS
2179 @ 21775:               PUSHI  #0x00000001
2180 @ 21780:               PUSH   NAMEMAX
2181 @ 21783:               PUSH   INMAX
2182 @ 21786:               PUSHI  #0x00000001
2183 @ 21791:               ADD   
2184 @ 21792:               FOR    L_0006

   358      exp(pos) = dp
2185 @ 21795:               LINE   358 "regression-compile-tmp/nminimo.imp"
2186 @ 21833:               PUSH   EXP
2187 @ 21836:               PUSH   POS
2188 @ 21839:               ACCESS
2189 @ 21840:               PUSH   DP
2190 @ 21843:               ASSVAL

   359      first = 1
2191 @ 21844:               LINE   359 "regression-compile-tmp/nminimo.imp"
2192 @ 21882:               PUSH   FIRST
2193 @ 21885:               PUSHI  #0x00000001
2194 @ 21890:               ASSVAL

   360      %integer first pos1 A = pos1 {workaround}
2195 @ 21891:               LINE   360 "regression-compile-tmp/nminimo.imp"
2196 @ 21929:               DEF    FIRSTPOS1A p1=V_00c7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2197 @ 21951:               PUSH   FIRSTPOS1A
2198 @ 21954:               PUSH   POS1
2199 @ 21957:               ASSVAL

   361      %for pos1 = namebound,-1,first{workaround}pos1 A %cycle
2200 @ 21958:               LINE   361 "regression-compile-tmp/nminimo.imp"
2201 @ 21996:               PUSH   POS1
2202 @ 21999:               PUSHI  #0x00000001
2203 @ 22004:               NEGATE
2204 @ 22005:               PUSH   FIRSTPOS1A
2205 @ 22008:               PUSHI  #0x00000100
2206 @ 22013:               FOR    L_0009

   362        %if exp(pos1)&bit # 0 %start
2207 @ 22016:               LINE   362 "regression-compile-tmp/nminimo.imp"
2208 @ 22054:               PUSH   EXP
2209 @ 22057:               PUSH   POS1
2210 @ 22060:               ACCESS
2211 @ 22061:               PUSH   BIT
2212 @ 22064:               AND   
2213 @ 22065:               PUSHI  #0x00000000
2214 @ 22070:               JUMPIF = L_000d

   363          put(pos1)
2215 @ 22074:               LINE   363 "regression-compile-tmp/nminimo.imp"
2216 @ 22112:               PUSH   PUT
2217 @ 22115:               PUSH   POS1
2218 @ 22118:               ASSPAR
2219 @ 22119:               CALL  

   364          put(or) %if first = 0
2220 @ 22120:               LINE   364 "regression-compile-tmp/nminimo.imp"
2221 @ 22158:               PUSH   FIRST
2222 @ 22161:               PUSHI  #0x00000000
2223 @ 22166:               JUMPIF # L_0010
2224 @ 22170:               PUSH   PUT
2225 @ 22173:               PUSHI  #0xfffffffe
2226 @ 22178:               ASSPAR
2227 @ 22179:               CALL  
2228 @ 22180:               LOCATE L_0010

   365          first = 0
2229 @ 22183:               LINE   365 "regression-compile-tmp/nminimo.imp"
2230 @ 22221:               PUSH   FIRST
2231 @ 22224:               PUSHI  #0x00000000
2232 @ 22229:               ASSVAL

   366        %finish
2233 @ 22230:               LINE   366 "regression-compile-tmp/nminimo.imp"
2234 @ 22268:               LOCATE L_000d

   367      %repeat
2235 @ 22271:               LINE   367 "regression-compile-tmp/nminimo.imp"
2236 @ 22309:               REPEAT L_0009
2237 @ 22312:               LOCATE L_000a

   368      put(0)
2238 @ 22315:               LINE   368 "regression-compile-tmp/nminimo.imp"
2239 @ 22353:               PUSH   PUT
2240 @ 22356:               PUSHI  #0x00000000
2241 @ 22361:               ASSPAR
2242 @ 22362:               CALL  

   369      bit = bit<<1
2243 @ 22363:               LINE   369 "regression-compile-tmp/nminimo.imp"
2244 @ 22401:               PUSH   BIT
2245 @ 22404:               PUSH   BIT
2246 @ 22407:               PUSHI  #0x00000001
2247 @ 22412:               LSH   
2248 @ 22413:               ASSVAL

   370    %repeat
2249 @ 22414:               LINE   370 "regression-compile-tmp/nminimo.imp"
2250 @ 22452:               REPEAT L_0006
2251 @ 22455:               LOCATE L_0007

   371    dp1 = 1
2252 @ 22458:               LINE   371 "regression-compile-tmp/nminimo.imp"
2253 @ 22496:               PUSH   DP1
2254 @ 22499:               PUSHI  #0x00000001
2255 @ 22504:               ASSVAL

   372    %integer first pos1 B = pos1 {workaround}
2256 @ 22505:               LINE   372 "regression-compile-tmp/nminimo.imp"
2257 @ 22543:               DEF    FIRSTPOS1B p1=V_00c8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2258 @ 22565:               PUSH   FIRSTPOS1B
2259 @ 22568:               PUSH   POS1
2260 @ 22571:               ASSVAL

   373    %for pos1 = namebound,-1,first{workaround}pos1 B %cycle
2261 @ 22572:               LINE   373 "regression-compile-tmp/nminimo.imp"
2262 @ 22610:               PUSH   POS1
2263 @ 22613:               PUSHI  #0x00000001
2264 @ 22618:               NEGATE
2265 @ 22619:               PUSH   FIRSTPOS1B
2266 @ 22622:               PUSHI  #0x00000100
2267 @ 22627:               FOR    L_0006

   374      exp(pos1) = dp1
2268 @ 22630:               LINE   374 "regression-compile-tmp/nminimo.imp"
2269 @ 22668:               PUSH   EXP
2270 @ 22671:               PUSH   POS1
2271 @ 22674:               ACCESS
2272 @ 22675:               PUSH   DP1
2273 @ 22678:               ASSVAL

   375      dp1 = dp1+1 %until def(dp1-1) = 0
2274 @ 22679:               LINE   375 "regression-compile-tmp/nminimo.imp"
2275 @ 22717:               LOCATE L_0009
2276 @ 22720:               PUSH   DP1
2277 @ 22723:               PUSH   DP1
2278 @ 22726:               PUSHI  #0x00000001
2279 @ 22731:               ADD   
2280 @ 22732:               ASSVAL
2281 @ 22733:               PUSH   DEF
2282 @ 22736:               PUSH   DP1
2283 @ 22739:               PUSHI  #0x00000001
2284 @ 22744:               SUB   
2285 @ 22745:               ACCESS
2286 @ 22746:               PUSHI  #0x00000000
2287 @ 22751:               JUMPIF = L_000a
2288 @ 22755:               REPEAT L_0009
2289 @ 22758:               LOCATE L_000a

   376    %repeat
2290 @ 22761:               LINE   376 "regression-compile-tmp/nminimo.imp"
2291 @ 22799:               REPEAT L_0006
2292 @ 22802:               LOCATE L_0007

   377    read name
2293 @ 22805:               LINE   377 "regression-compile-tmp/nminimo.imp"
2294 @ 22843:               PUSH   READNAME
2295 @ 22846:               CALL  

   378  %finish
   379  ! OUTput list
   380  !  note that OUTput names are added again 
   381  !      to simplify treatment of "Don't cares"
2296 @ 22847:               LINE   378 "regression-compile-tmp/nminimo.imp"
2297 @ 22885:               LOCATE L_0003

   382    croak("Keyword ".curname."? ") %if curname # "OUT"
2298 @ 22888:               LINE   382 "regression-compile-tmp/nminimo.imp"
2299 @ 22926:               PUSH   CURNAME
2300 @ 22929:               PUSHS  "OUT"
2301 @ 22934:               JUMPIF = L_0004
2302 @ 22938:               PUSH   CROAK
2303 @ 22941:               PUSHS  "Keyword "
2304 @ 22951:               PUSH   CURNAME
2305 @ 22954:               CONCAT
2306 @ 22955:               PUSHS  "? "
2307 @ 22959:               CONCAT
2308 @ 22960:               ASSPAR
2309 @ 22961:               CALL  
2310 @ 22962:               LOCATE L_0004

   383    pend = sym %if pend=0
2311 @ 22965:               LINE   383 "regression-compile-tmp/nminimo.imp"
2312 @ 23003:               PUSH   PEND
2313 @ 23006:               PUSHI  #0x00000000
2314 @ 23011:               JUMPIF # L_0004
2315 @ 23015:               PUSH   PEND
2316 @ 23018:               PUSH   SYM
2317 @ 23021:               ASSVAL
2318 @ 23022:               LOCATE L_0004

   384    outmin = namemax+1;  pos = inmax
2319 @ 23025:               LINE   384 "regression-compile-tmp/nminimo.imp"
2320 @ 23063:               PUSH   OUTMIN
2321 @ 23066:               PUSH   NAMEMAX
2322 @ 23069:               PUSHI  #0x00000001
2323 @ 23074:               ADD   
2324 @ 23075:               ASSVAL
2325 @ 23076:               LINE   384 "regression-compile-tmp/nminimo.imp"
2326 @ 23114:               PUSH   POS
2327 @ 23117:               PUSH   INMAX
2328 @ 23120:               ASSVAL

   385    negout = 0;  ignorout = 0;  bit = 1
2329 @ 23121:               LINE   385 "regression-compile-tmp/nminimo.imp"
2330 @ 23159:               PUSH   NEGOUT
2331 @ 23162:               PUSHI  #0x00000000
2332 @ 23167:               ASSVAL
2333 @ 23168:               LINE   385 "regression-compile-tmp/nminimo.imp"
2334 @ 23206:               PUSH   IGNOROUT
2335 @ 23209:               PUSHI  #0x00000000
2336 @ 23214:               ASSVAL
2337 @ 23215:               LINE   385 "regression-compile-tmp/nminimo.imp"
2338 @ 23253:               PUSH   BIT
2339 @ 23256:               PUSHI  #0x00000001
2340 @ 23261:               ASSVAL

   386    %cycle
2341 @ 23262:               LINE   386 "regression-compile-tmp/nminimo.imp"
2342 @ 23300:               LOCATE L_0003

   387      croak("Too many outputs. ") %if namemax-outmin+2 > 32
2343 @ 23303:               LINE   387 "regression-compile-tmp/nminimo.imp"
2344 @ 23341:               PUSH   NAMEMAX
2345 @ 23344:               PUSH   OUTMIN
2346 @ 23347:               SUB   
2347 @ 23348:               PUSHI  #0x00000002
2348 @ 23353:               ADD   
2349 @ 23354:               PUSHI  #0x00000020
2350 @ 23359:               JUMPIF <= L_0007
2351 @ 23363:               PUSH   CROAK
2352 @ 23366:               PUSHS  "Too many outputs. "
2353 @ 23386:               ASSPAR
2354 @ 23387:               CALL  
2355 @ 23388:               LOCATE L_0007

   388      read sym %until sym>' ' %and sym#','
2356 @ 23391:               LINE   388 "regression-compile-tmp/nminimo.imp"
2357 @ 23429:               LOCATE L_0006
2358 @ 23432:               PUSH   READSYM
2359 @ 23435:               CALL  
2360 @ 23436:               PUSH   SYM
2361 @ 23439:               PUSHI  #0x00000020
2362 @ 23444:               JUMPIF <= L_0008
2363 @ 23448:               PUSH   SYM
2364 @ 23451:               PUSHI  #0x0000002c
2365 @ 23456:               JUMPIF # L_0007
2366 @ 23460:               LOCATE L_0008
2367 @ 23463:               REPEAT L_0006
2368 @ 23466:               LOCATE L_0007

   389      %if sym = '-' %start
2369 @ 23469:               LINE   389 "regression-compile-tmp/nminimo.imp"
2370 @ 23507:               PUSH   SYM
2371 @ 23510:               PUSHI  #0x0000002d
2372 @ 23515:               JUMPIF # L_0007

   390        ignorout = ignorout+bit
2373 @ 23519:               LINE   390 "regression-compile-tmp/nminimo.imp"
2374 @ 23557:               PUSH   IGNOROUT
2375 @ 23560:               PUSH   IGNOROUT
2376 @ 23563:               PUSH   BIT
2377 @ 23566:               ADD   
2378 @ 23567:               ASSVAL

   391        curname = "-"
2379 @ 23568:               LINE   391 "regression-compile-tmp/nminimo.imp"
2380 @ 23606:               PUSH   CURNAME
2381 @ 23609:               PUSHS  "-"
2382 @ 23612:               ASSVAL

   392        read sym
2383 @ 23613:               LINE   392 "regression-compile-tmp/nminimo.imp"
2384 @ 23651:               PUSH   READSYM
2385 @ 23654:               CALL  

   393      %finish %else %start
2386 @ 23655:               LINE   393 "regression-compile-tmp/nminimo.imp"
2387 @ 23693:               GOTO   L_0006
2388 @ 23696:               LOCATE L_0007

   394        %if sym = '\' %then negout = negout+bit %c
   395        %else pend = sym
2389 @ 23699:               LINE   394 "regression-compile-tmp/nminimo.imp"
2390 @ 23737:               PUSH   SYM
2391 @ 23740:               PUSHI  #0x0000005c
2392 @ 23745:               JUMPIF # L_000a
2393 @ 23749:               PUSH   NEGOUT
2394 @ 23752:               PUSH   NEGOUT
2395 @ 23755:               PUSH   BIT
2396 @ 23758:               ADD   
2397 @ 23759:               ASSVAL
2398 @ 23760:               GOTO   L_0009
2399 @ 23763:               LOCATE L_000a
2400 @ 23766:               PUSH   PEND
2401 @ 23769:               PUSH   SYM
2402 @ 23772:               ASSVAL
2403 @ 23773:               LOCATE L_0009

   396        read name
2404 @ 23776:               LINE   396 "regression-compile-tmp/nminimo.imp"
2405 @ 23814:               PUSH   READNAME
2406 @ 23817:               CALL  

   397      %finish
2407 @ 23818:               LINE   397 "regression-compile-tmp/nminimo.imp"
2408 @ 23856:               LOCATE L_0006

   398      %if tabin = 0 %then lookup %else pos = pos+1
2409 @ 23859:               LINE   398 "regression-compile-tmp/nminimo.imp"
2410 @ 23897:               PUSH   TABIN
2411 @ 23900:               PUSHI  #0x00000000
2412 @ 23905:               JUMPIF # L_0007
2413 @ 23909:               PUSH   LOOKUP
2414 @ 23912:               CALL  
2415 @ 23913:               GOTO   L_0006
2416 @ 23916:               LOCATE L_0007
2417 @ 23919:               PUSH   POS
2418 @ 23922:               PUSH   POS
2419 @ 23925:               PUSHI  #0x00000001
2420 @ 23930:               ADD   
2421 @ 23931:               ASSVAL
2422 @ 23932:               LOCATE L_0006

   399      %if pos # 0 %start;                 !should be there
2423 @ 23935:               LINE   399 "regression-compile-tmp/nminimo.imp"
2424 @ 23973:               PUSH   POS
2425 @ 23976:               PUSHI  #0x00000000
2426 @ 23981:               JUMPIF = L_0007

   400        addname
2427 @ 23985:               LINE   400 "regression-compile-tmp/nminimo.imp"
2428 @ 24023:               PUSH   ADDNAME
2429 @ 24026:               CALL  

   401        exp(namemax) = dp
2430 @ 24027:               LINE   401 "regression-compile-tmp/nminimo.imp"
2431 @ 24065:               PUSH   EXP
2432 @ 24068:               PUSH   NAMEMAX
2433 @ 24071:               ACCESS
2434 @ 24072:               PUSH   DP
2435 @ 24075:               ASSVAL

   402        put(pos)
2436 @ 24076:               LINE   402 "regression-compile-tmp/nminimo.imp"
2437 @ 24114:               PUSH   PUT
2438 @ 24117:               PUSH   POS
2439 @ 24120:               ASSPAR
2440 @ 24121:               CALL  

   403        %if tabin = 0 %start
2441 @ 24122:               LINE   403 "regression-compile-tmp/nminimo.imp"
2442 @ 24160:               PUSH   TABIN
2443 @ 24163:               PUSHI  #0x00000000
2444 @ 24168:               JUMPIF # L_000a

   404          curname = curname."?";          !any "Don't cares" for this one?
2445 @ 24172:               LINE   404 "regression-compile-tmp/nminimo.imp"
2446 @ 24210:               PUSH   CURNAME
2447 @ 24213:               PUSH   CURNAME
2448 @ 24216:               PUSHS  "?"
2449 @ 24219:               CONCAT
2450 @ 24220:               ASSVAL

   405          lookup
2451 @ 24221:               LINE   405 "regression-compile-tmp/nminimo.imp"
2452 @ 24259:               PUSH   LOOKUP
2453 @ 24262:               CALL  

   406          %if pos # 0 %start;             !if so
2454 @ 24263:               LINE   406 "regression-compile-tmp/nminimo.imp"
2455 @ 24301:               PUSH   POS
2456 @ 24304:               PUSHI  #0x00000000
2457 @ 24309:               JUMPIF = L_000d

   407            put(pos)
2458 @ 24313:               LINE   407 "regression-compile-tmp/nminimo.imp"
2459 @ 24351:               PUSH   PUT
2460 @ 24354:               PUSH   POS
2461 @ 24357:               ASSPAR
2462 @ 24358:               CALL  

   408            put(or)
2463 @ 24359:               LINE   408 "regression-compile-tmp/nminimo.imp"
2464 @ 24397:               PUSH   PUT
2465 @ 24400:               PUSHI  #0xfffffffe
2466 @ 24405:               ASSPAR
2467 @ 24406:               CALL  

   409          %finish
2468 @ 24407:               LINE   409 "regression-compile-tmp/nminimo.imp"
2469 @ 24445:               LOCATE L_000d

   410        %finish
2470 @ 24448:               LINE   410 "regression-compile-tmp/nminimo.imp"
2471 @ 24486:               LOCATE L_000a

   411        put(0)
2472 @ 24489:               LINE   411 "regression-compile-tmp/nminimo.imp"
2473 @ 24527:               PUSH   PUT
2474 @ 24530:               PUSHI  #0x00000000
2475 @ 24535:               ASSPAR
2476 @ 24536:               CALL  

   412      %finish %else %start
2477 @ 24537:               LINE   412 "regression-compile-tmp/nminimo.imp"
2478 @ 24575:               GOTO   L_0006
2479 @ 24578:               LOCATE L_0007

   413        queryname
2480 @ 24581:               LINE   413 "regression-compile-tmp/nminimo.imp"
2481 @ 24619:               PUSH   QUERYNAME
2482 @ 24622:               CALL  

   414      %finish
2483 @ 24623:               LINE   414 "regression-compile-tmp/nminimo.imp"
2484 @ 24661:               LOCATE L_0006

   415      bit = bit<<1
2485 @ 24664:               LINE   415 "regression-compile-tmp/nminimo.imp"
2486 @ 24702:               PUSH   BIT
2487 @ 24705:               PUSH   BIT
2488 @ 24708:               PUSHI  #0x00000001
2489 @ 24713:               LSH   
2490 @ 24714:               ASSVAL

   416    %repeat %until sym # ','
2491 @ 24715:               LINE   416 "regression-compile-tmp/nminimo.imp"
2492 @ 24753:               PUSH   SYM
2493 @ 24756:               PUSHI  #0x0000002c
2494 @ 24761:               JUMPIF # L_0004
2495 @ 24765:               REPEAT L_0003
2496 @ 24768:               LOCATE L_0004

   417    %stop %if outmin > namemax;           !no (surviving) outputs
2497 @ 24771:               LINE   417 "regression-compile-tmp/nminimo.imp"
2498 @ 24809:               PUSH   OUTMIN
2499 @ 24812:               PUSH   NAMEMAX
2500 @ 24815:               JUMPIF <= L_0004
2501 @ 24819:               STOP  
2502 @ 24820:               LOCATE L_0004

   418    croak("Faulty format. ") %if sym # nl
2503 @ 24823:               LINE   418 "regression-compile-tmp/nminimo.imp"
2504 @ 24861:               PUSH   SYM
2505 @ 24864:               PUSHI  #0x0000000a
2506 @ 24869:               JUMPIF = L_0004
2507 @ 24873:               PUSH   CROAK
2508 @ 24876:               PUSHS  "Faulty format. "
2509 @ 24893:               ASSPAR
2510 @ 24894:               CALL  
2511 @ 24895:               LOCATE L_0004

   419    negout = \negout %if nout # 0
2512 @ 24898:               LINE   419 "regression-compile-tmp/nminimo.imp"
2513 @ 24936:               PUSH   NOUT
2514 @ 24939:               PUSHI  #0x00000000
2515 @ 24944:               JUMPIF = L_0004
2516 @ 24948:               PUSH   NEGOUT
2517 @ 24951:               PUSH   NEGOUT
2518 @ 24954:               NOT   
2519 @ 24955:               ASSVAL
2520 @ 24956:               LOCATE L_0004

   420  %end; !READIN
   421  
2521 @ 24959:               LINE   420 "regression-compile-tmp/nminimo.imp"
2522 @ 24997:            END    _lev0id0_READIN {lev=2 --> 1}

   422  %routine print term(%record(cell) v, %integer x)
2523 @ 24998:            LINE   422 "regression-compile-tmp/nminimo.imp"
2524 @ 25036:            DEF    PRINTTERM (_lev0id0_PRINTTERM) p1=V_00b5 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2525 @ 25057:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
2526 @ 25058:                  DEF    V p1=V_00b6 a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2527 @ 25071:                  DEF    X p1=V_00b7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2528 @ 25084:               FINISH ) {lev=2}

   423  %integer i,l
2529 @ 25085:               LINE   423 "regression-compile-tmp/nminimo.imp"
2530 @ 25123:               DEF    I p1=V_00b8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2531 @ 25136:               DEF    L p1=V_00b9 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   424    %for i = 1,1,inmax %cycle
2532 @ 25149:               LINE   424 "regression-compile-tmp/nminimo.imp"
2533 @ 25187:               PUSH   I
2534 @ 25190:               PUSHI  #0x00000001
2535 @ 25195:               PUSH   INMAX
2536 @ 25198:               PUSHI  #0x00000001
2537 @ 25203:               FOR    L_0003

   425      space %if squash = 0
2538 @ 25206:               LINE   425 "regression-compile-tmp/nminimo.imp"
2539 @ 25244:               PUSH   SQUASH
2540 @ 25247:               PUSHI  #0x00000000
2541 @ 25252:               JUMPIF # L_0007
2542 @ 25256:               PUSH   SPACE
2543 @ 25259:               CALL  
2544 @ 25260:               LOCATE L_0007

   426      %if (v_t!v_f)&1 # 0 %start
2545 @ 25263:               LINE   426 "regression-compile-tmp/nminimo.imp"
2546 @ 25301:               PUSH   V
2547 @ 25304:               SELECT 1
2548 @ 25307:               PUSH   V
2549 @ 25310:               SELECT 2
2550 @ 25313:               OR    
2551 @ 25314:               PUSHI  #0x00000001
2552 @ 25319:               AND   
2553 @ 25320:               PUSHI  #0x00000000
2554 @ 25325:               JUMPIF = L_0007

   427        l = ' '
2555 @ 25329:               LINE   427 "regression-compile-tmp/nminimo.imp"
2556 @ 25367:               PUSH   L
2557 @ 25370:               PUSHI  #0x00000020
2558 @ 25375:               ASSVAL

   428        l = '\' %if v_f&1 # 0
2559 @ 25376:               LINE   428 "regression-compile-tmp/nminimo.imp"
2560 @ 25414:               PUSH   V
2561 @ 25417:               SELECT 2
2562 @ 25420:               PUSHI  #0x00000001
2563 @ 25425:               AND   
2564 @ 25426:               PUSHI  #0x00000000
2565 @ 25431:               JUMPIF = L_000a
2566 @ 25435:               PUSH   L
2567 @ 25438:               PUSHI  #0x0000005c
2568 @ 25443:               ASSVAL
2569 @ 25444:               LOCATE L_000a

   429        printsymbol(l)
2570 @ 25447:               LINE   429 "regression-compile-tmp/nminimo.imp"
2571 @ 25485:               PUSH   PRINTSYMBOL
2572 @ 25488:               PUSH   L
2573 @ 25491:               ASSPAR
2574 @ 25492:               CALL  

   430        print string(name(i))
2575 @ 25493:               LINE   430 "regression-compile-tmp/nminimo.imp"
2576 @ 25531:               PUSH   PRINTSTRING
2577 @ 25534:               PUSH   NAME
2578 @ 25537:               PUSH   I
2579 @ 25540:               ACCESS
2580 @ 25541:               ASSPAR
2581 @ 25542:               CALL  

   431      %finish %else %start
2582 @ 25543:               LINE   431 "regression-compile-tmp/nminimo.imp"
2583 @ 25581:               GOTO   L_0006
2584 @ 25584:               LOCATE L_0007

   432        l = length(name(i))
2585 @ 25587:               LINE   432 "regression-compile-tmp/nminimo.imp"
2586 @ 25625:               PUSH   L
2587 @ 25628:               PUSH   LENGTH
2588 @ 25631:               PUSH   NAME
2589 @ 25634:               PUSH   I
2590 @ 25637:               ACCESS
2591 @ 25638:               ASSPAR
2592 @ 25639:               CALL  
2593 @ 25640:               ASSVAL

   433        spaces((l+1)//2)
2594 @ 25641:               LINE   433 "regression-compile-tmp/nminimo.imp"
2595 @ 25679:               PUSH   SPACES
2596 @ 25682:               PUSH   L
2597 @ 25685:               PUSHI  #0x00000001
2598 @ 25690:               ADD   
2599 @ 25691:               PUSHI  #0x00000002
2600 @ 25696:               QUOT  
2601 @ 25697:               ASSPAR
2602 @ 25698:               CALL  

   434        printsymbol('.')
2603 @ 25699:               LINE   434 "regression-compile-tmp/nminimo.imp"
2604 @ 25737:               PUSH   PRINTSYMBOL
2605 @ 25740:               PUSHI  #0x0000002e
2606 @ 25745:               ASSPAR
2607 @ 25746:               CALL  

   435        spaces(l//2)
2608 @ 25747:               LINE   435 "regression-compile-tmp/nminimo.imp"
2609 @ 25785:               PUSH   SPACES
2610 @ 25788:               PUSH   L
2611 @ 25791:               PUSHI  #0x00000002
2612 @ 25796:               QUOT  
2613 @ 25797:               ASSPAR
2614 @ 25798:               CALL  

   436      %finish
2615 @ 25799:               LINE   436 "regression-compile-tmp/nminimo.imp"
2616 @ 25837:               LOCATE L_0006

   437      v_t = v_t>>1;  v_f = v_f>>1
2617 @ 25840:               LINE   437 "regression-compile-tmp/nminimo.imp"
2618 @ 25878:               PUSH   V
2619 @ 25881:               SELECT 1
2620 @ 25884:               PUSH   V
2621 @ 25887:               SELECT 1
2622 @ 25890:               PUSHI  #0x00000001
2623 @ 25895:               RSH   
2624 @ 25896:               ASSVAL
2625 @ 25897:               LINE   437 "regression-compile-tmp/nminimo.imp"
2626 @ 25935:               PUSH   V
2627 @ 25938:               SELECT 2
2628 @ 25941:               PUSH   V
2629 @ 25944:               SELECT 2
2630 @ 25947:               PUSHI  #0x00000001
2631 @ 25952:               RSH   
2632 @ 25953:               ASSVAL

   438    %repeat
2633 @ 25954:               LINE   438 "regression-compile-tmp/nminimo.imp"
2634 @ 25992:               REPEAT L_0003
2635 @ 25995:               LOCATE L_0004

   439    space %if squash = 0
2636 @ 25998:               LINE   439 "regression-compile-tmp/nminimo.imp"
2637 @ 26036:               PUSH   SQUASH
2638 @ 26039:               PUSHI  #0x00000000
2639 @ 26044:               JUMPIF # L_0004
2640 @ 26048:               PUSH   SPACE
2641 @ 26051:               CALL  
2642 @ 26052:               LOCATE L_0004

   440    printsymbol(':')
2643 @ 26055:               LINE   440 "regression-compile-tmp/nminimo.imp"
2644 @ 26093:               PUSH   PRINTSYMBOL
2645 @ 26096:               PUSHI  #0x0000003a
2646 @ 26101:               ASSPAR
2647 @ 26102:               CALL  

   441    %for i = outmin,1,namemax %cycle
2648 @ 26103:               LINE   441 "regression-compile-tmp/nminimo.imp"
2649 @ 26141:               PUSH   I
2650 @ 26144:               PUSHI  #0x00000001
2651 @ 26149:               PUSH   NAMEMAX
2652 @ 26152:               PUSH   OUTMIN
2653 @ 26155:               FOR    L_0003

   442      space
2654 @ 26158:               LINE   442 "regression-compile-tmp/nminimo.imp"
2655 @ 26196:               PUSH   SPACE
2656 @ 26199:               CALL  

   443      %if v_outs&1 # 0 %start
2657 @ 26200:               LINE   443 "regression-compile-tmp/nminimo.imp"
2658 @ 26238:               PUSH   V
2659 @ 26241:               SELECT 3
2660 @ 26244:               PUSHI  #0x00000001
2661 @ 26249:               AND   
2662 @ 26250:               PUSHI  #0x00000000
2663 @ 26255:               JUMPIF = L_0007

   444        printstring(name(i))
2664 @ 26259:               LINE   444 "regression-compile-tmp/nminimo.imp"
2665 @ 26297:               PUSH   PRINTSTRING
2666 @ 26300:               PUSH   NAME
2667 @ 26303:               PUSH   I
2668 @ 26306:               ACCESS
2669 @ 26307:               ASSPAR
2670 @ 26308:               CALL  

   445      %finish %else %start
2671 @ 26309:               LINE   445 "regression-compile-tmp/nminimo.imp"
2672 @ 26347:               GOTO   L_0006
2673 @ 26350:               LOCATE L_0007

   446        l = length(name(i))
2674 @ 26353:               LINE   446 "regression-compile-tmp/nminimo.imp"
2675 @ 26391:               PUSH   L
2676 @ 26394:               PUSH   LENGTH
2677 @ 26397:               PUSH   NAME
2678 @ 26400:               PUSH   I
2679 @ 26403:               ACCESS
2680 @ 26404:               ASSPAR
2681 @ 26405:               CALL  
2682 @ 26406:               ASSVAL

   447        spaces((l-1)//2)
2683 @ 26407:               LINE   447 "regression-compile-tmp/nminimo.imp"
2684 @ 26445:               PUSH   SPACES
2685 @ 26448:               PUSH   L
2686 @ 26451:               PUSHI  #0x00000001
2687 @ 26456:               SUB   
2688 @ 26457:               PUSHI  #0x00000002
2689 @ 26462:               QUOT  
2690 @ 26463:               ASSPAR
2691 @ 26464:               CALL  

   448        %if x&1 = 0 %then printsymbol('.') %c
   449        %else printsymbol('?')
2692 @ 26465:               LINE   448 "regression-compile-tmp/nminimo.imp"
2693 @ 26503:               PUSH   X
2694 @ 26506:               PUSHI  #0x00000001
2695 @ 26511:               AND   
2696 @ 26512:               PUSHI  #0x00000000
2697 @ 26517:               JUMPIF # L_000a
2698 @ 26521:               PUSH   PRINTSYMBOL
2699 @ 26524:               PUSHI  #0x0000002e
2700 @ 26529:               ASSPAR
2701 @ 26530:               CALL  
2702 @ 26531:               GOTO   L_0009
2703 @ 26534:               LOCATE L_000a
2704 @ 26537:               PUSH   PRINTSYMBOL
2705 @ 26540:               PUSHI  #0x0000003f
2706 @ 26545:               ASSPAR
2707 @ 26546:               CALL  
2708 @ 26547:               LOCATE L_0009

   450        spaces(l//2)
2709 @ 26550:               LINE   450 "regression-compile-tmp/nminimo.imp"
2710 @ 26588:               PUSH   SPACES
2711 @ 26591:               PUSH   L
2712 @ 26594:               PUSHI  #0x00000002
2713 @ 26599:               QUOT  
2714 @ 26600:               ASSPAR
2715 @ 26601:               CALL  

   451      %finish
2716 @ 26602:               LINE   451 "regression-compile-tmp/nminimo.imp"
2717 @ 26640:               LOCATE L_0006

   452      v_outs = v_outs>>1;  x = x>>1
2718 @ 26643:               LINE   452 "regression-compile-tmp/nminimo.imp"
2719 @ 26681:               PUSH   V
2720 @ 26684:               SELECT 3
2721 @ 26687:               PUSH   V
2722 @ 26690:               SELECT 3
2723 @ 26693:               PUSHI  #0x00000001
2724 @ 26698:               RSH   
2725 @ 26699:               ASSVAL
2726 @ 26700:               LINE   452 "regression-compile-tmp/nminimo.imp"
2727 @ 26738:               PUSH   X
2728 @ 26741:               PUSH   X
2729 @ 26744:               PUSHI  #0x00000001
2730 @ 26749:               RSH   
2731 @ 26750:               ASSVAL

   453    %repeat
2732 @ 26751:               LINE   453 "regression-compile-tmp/nminimo.imp"
2733 @ 26789:               REPEAT L_0003
2734 @ 26792:               LOCATE L_0004

   454    newline
2735 @ 26795:               LINE   454 "regression-compile-tmp/nminimo.imp"
2736 @ 26833:               PUSH   NEWLINE
2737 @ 26836:               CALL  

   455  %end
   456  
2738 @ 26837:               LINE   455 "regression-compile-tmp/nminimo.imp"
2739 @ 26875:            END    _lev0id0_PRINTTERM {lev=2 --> 1}

   457  %routine monitor(%integer lim)
2740 @ 26876:            LINE   457 "regression-compile-tmp/nminimo.imp"
2741 @ 26914:            DEF    MONITOR (_lev0id0_MONITOR) p1=V_00b6 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2742 @ 26933:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
2743 @ 26934:                  DEF    LIM p1=V_00b7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2744 @ 26949:               FINISH ) {lev=2}

   458  %integer q
2745 @ 26950:               LINE   458 "regression-compile-tmp/nminimo.imp"
2746 @ 26988:               DEF    Q p1=V_00b8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   459    newline
2747 @ 27001:               LINE   459 "regression-compile-tmp/nminimo.imp"
2748 @ 27039:               PUSH   NEWLINE
2749 @ 27042:               CALL  

   460    q = 1
2750 @ 27043:               LINE   460 "regression-compile-tmp/nminimo.imp"
2751 @ 27081:               PUSH   Q
2752 @ 27084:               PUSHI  #0x00000001
2753 @ 27089:               ASSVAL

   461    %while q # lim %cycle
2754 @ 27090:               LINE   461 "regression-compile-tmp/nminimo.imp"
2755 @ 27128:               LOCATE L_0003
2756 @ 27131:               PUSH   Q
2757 @ 27134:               PUSH   LIM
2758 @ 27137:               JUMPIF = L_0004

   462      write(q,2) %if mon&4 # 0
2759 @ 27141:               LINE   462 "regression-compile-tmp/nminimo.imp"
2760 @ 27179:               PUSH   MON
2761 @ 27182:               PUSHI  #0x00000004
2762 @ 27187:               AND   
2763 @ 27188:               PUSHI  #0x00000000
2764 @ 27193:               JUMPIF = L_0007
2765 @ 27197:               PUSH   WRITE
2766 @ 27200:               PUSH   Q
2767 @ 27203:               ASSPAR
2768 @ 27204:               PUSHI  #0x00000002
2769 @ 27209:               ASSPAR
2770 @ 27210:               CALL  
2771 @ 27211:               LOCATE L_0007

   463      print term(w(q),0)
2772 @ 27214:               LINE   463 "regression-compile-tmp/nminimo.imp"
2773 @ 27252:               PUSH   PRINTTERM
2774 @ 27255:               PUSH   W
2775 @ 27258:               PUSH   Q
2776 @ 27261:               ACCESS
2777 @ 27262:               ASSPAR
2778 @ 27263:               PUSHI  #0x00000000
2779 @ 27268:               ASSPAR
2780 @ 27269:               CALL  

   464      q = q+1
2781 @ 27270:               LINE   464 "regression-compile-tmp/nminimo.imp"
2782 @ 27308:               PUSH   Q
2783 @ 27311:               PUSH   Q
2784 @ 27314:               PUSHI  #0x00000001
2785 @ 27319:               ADD   
2786 @ 27320:               ASSVAL

   465    %repeat
2787 @ 27321:               LINE   465 "regression-compile-tmp/nminimo.imp"
2788 @ 27359:               REPEAT L_0003
2789 @ 27362:               LOCATE L_0004

   466    newline
2790 @ 27365:               LINE   466 "regression-compile-tmp/nminimo.imp"
2791 @ 27403:               PUSH   NEWLINE
2792 @ 27406:               CALL  

   467  %end
   468  
2793 @ 27407:               LINE   467 "regression-compile-tmp/nminimo.imp"
2794 @ 27445:            END    _lev0id0_MONITOR {lev=2 --> 1}

   469  %routine copydown
2795 @ 27446:            LINE   469 "regression-compile-tmp/nminimo.imp"
2796 @ 27484:            DEF    COPYDOWN (_lev0id0_COPYDOWN) p1=V_00b7 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2797 @ 27504:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
2798 @ 27505:               FINISH ) {lev=2}

   470    np1 = np
2799 @ 27506:               LINE   470 "regression-compile-tmp/nminimo.imp"
2800 @ 27544:               PUSH   NP1
2801 @ 27547:               PUSH   NP
2802 @ 27550:               ASSVAL

   471    %while sp # sp1 %cycle
2803 @ 27551:               LINE   471 "regression-compile-tmp/nminimo.imp"
2804 @ 27589:               LOCATE L_0003
2805 @ 27592:               PUSH   SP
2806 @ 27595:               PUSH   SP1
2807 @ 27598:               JUMPIF = L_0004

   472      sp = sp-1;  np = np-1
2808 @ 27602:               LINE   472 "regression-compile-tmp/nminimo.imp"
2809 @ 27640:               PUSH   SP
2810 @ 27643:               PUSH   SP
2811 @ 27646:               PUSHI  #0x00000001
2812 @ 27651:               SUB   
2813 @ 27652:               ASSVAL
2814 @ 27653:               LINE   472 "regression-compile-tmp/nminimo.imp"
2815 @ 27691:               PUSH   NP
2816 @ 27694:               PUSH   NP
2817 @ 27697:               PUSHI  #0x00000001
2818 @ 27702:               SUB   
2819 @ 27703:               ASSVAL

   473      w(np) = w(sp)
2820 @ 27704:               LINE   473 "regression-compile-tmp/nminimo.imp"
2821 @ 27742:               PUSH   W
2822 @ 27745:               PUSH   NP
2823 @ 27748:               ACCESS
2824 @ 27749:               PUSH   W
2825 @ 27752:               PUSH   SP
2826 @ 27755:               ACCESS
2827 @ 27756:               ASSVAL

   474    %repeat
2828 @ 27757:               LINE   474 "regression-compile-tmp/nminimo.imp"
2829 @ 27795:               REPEAT L_0003
2830 @ 27798:               LOCATE L_0004

   475  %end
   476  
2831 @ 27801:               LINE   475 "regression-compile-tmp/nminimo.imp"
2832 @ 27839:            END    _lev0id0_COPYDOWN {lev=2 --> 1}

   477  %routine erase(%integer p)
2833 @ 27840:            LINE   477 "regression-compile-tmp/nminimo.imp"
2834 @ 27878:            DEF    ERASE (_lev0id0_ERASE) p1=V_00b8 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2835 @ 27895:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
2836 @ 27896:                  DEF    P p1=V_00b9 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2837 @ 27909:               FINISH ) {lev=2}

   478    sp = sp-1
2838 @ 27910:               LINE   478 "regression-compile-tmp/nminimo.imp"
2839 @ 27948:               PUSH   SP
2840 @ 27951:               PUSH   SP
2841 @ 27954:               PUSHI  #0x00000001
2842 @ 27959:               SUB   
2843 @ 27960:               ASSVAL

   479    %while p # sp %cycle
2844 @ 27961:               LINE   479 "regression-compile-tmp/nminimo.imp"
2845 @ 27999:               LOCATE L_0003
2846 @ 28002:               PUSH   P
2847 @ 28005:               PUSH   SP
2848 @ 28008:               JUMPIF = L_0004

   480      w(p) = w(p+1)
2849 @ 28012:               LINE   480 "regression-compile-tmp/nminimo.imp"
2850 @ 28050:               PUSH   W
2851 @ 28053:               PUSH   P
2852 @ 28056:               ACCESS
2853 @ 28057:               PUSH   W
2854 @ 28060:               PUSH   P
2855 @ 28063:               PUSHI  #0x00000001
2856 @ 28068:               ADD   
2857 @ 28069:               ACCESS
2858 @ 28070:               ASSVAL

   481      p = p+1
2859 @ 28071:               LINE   481 "regression-compile-tmp/nminimo.imp"
2860 @ 28109:               PUSH   P
2861 @ 28112:               PUSH   P
2862 @ 28115:               PUSHI  #0x00000001
2863 @ 28120:               ADD   
2864 @ 28121:               ASSVAL

   482    %repeat
2865 @ 28122:               LINE   482 "regression-compile-tmp/nminimo.imp"
2866 @ 28160:               REPEAT L_0003
2867 @ 28163:               LOCATE L_0004

   483  %end
   484  
2868 @ 28166:               LINE   483 "regression-compile-tmp/nminimo.imp"
2869 @ 28204:            END    _lev0id0_ERASE {lev=2 --> 1}

   485  %routine merge
2870 @ 28205:            LINE   485 "regression-compile-tmp/nminimo.imp"
2871 @ 28243:            DEF    MERGE (_lev0id0_MERGE) p1=V_00b9 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2872 @ 28260:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
2873 @ 28261:               FINISH ) {lev=2}

   486  %integer p,k,same
2874 @ 28262:               LINE   486 "regression-compile-tmp/nminimo.imp"
2875 @ 28300:               DEF    P p1=V_00ba a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2876 @ 28313:               DEF    K p1=V_00bb a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
2877 @ 28326:               DEF    SAME p1=V_00bc a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   487  %ownrecord(cell) v,n=0
2878 @ 28342:               LINE   487 "regression-compile-tmp/nminimo.imp"
2879 @ 28380:               DEF    V p1=V_00bd a/tf=41 b/format=a5 c/ostate=21  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
2880 @ 28393:               INIT   1
2881 @ 28396:               PUSHI  #0x00000000
2882 @ 28401:               DEF    N p1=V_00be a/tf=41 b/format=a5 c/ostate=21  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
2883 @ 28414:               INIT   1

   488    %while np # np1 %cycle
2884 @ 28417:               LINE   488 "regression-compile-tmp/nminimo.imp"
2885 @ 28455:               LOCATE L_0003
2886 @ 28458:               PUSH   NP
2887 @ 28461:               PUSH   NP1
2888 @ 28464:               JUMPIF = L_0004

   489      v = w(np);  np = np+1
2889 @ 28468:               LINE   489 "regression-compile-tmp/nminimo.imp"
2890 @ 28506:               PUSH   V
2891 @ 28509:               PUSH   W
2892 @ 28512:               PUSH   NP
2893 @ 28515:               ACCESS
2894 @ 28516:               ASSVAL
2895 @ 28517:               LINE   489 "regression-compile-tmp/nminimo.imp"
2896 @ 28555:               PUSH   NP
2897 @ 28558:               PUSH   NP
2898 @ 28561:               PUSHI  #0x00000001
2899 @ 28566:               ADD   
2900 @ 28567:               ASSVAL

   490      p = sp1;  same = 0
2901 @ 28568:               LINE   490 "regression-compile-tmp/nminimo.imp"
2902 @ 28606:               PUSH   P
2903 @ 28609:               PUSH   SP1
2904 @ 28612:               ASSVAL
2905 @ 28613:               LINE   490 "regression-compile-tmp/nminimo.imp"
2906 @ 28651:               PUSH   SAME
2907 @ 28654:               PUSHI  #0x00000000
2908 @ 28659:               ASSVAL

   491      %while p # sp %cycle
2909 @ 28660:               LINE   491 "regression-compile-tmp/nminimo.imp"
2910 @ 28698:               LOCATE L_0006
2911 @ 28701:               PUSH   P
2912 @ 28704:               PUSH   SP
2913 @ 28707:               JUMPIF = L_0007

   492        %if w(p)_t!v_t = v_t %and w(p)_f!v_f = v_f %start; !V -> @P
2914 @ 28711:               LINE   492 "regression-compile-tmp/nminimo.imp"
2915 @ 28749:               PUSH   W
2916 @ 28752:               PUSH   P
2917 @ 28755:               ACCESS
2918 @ 28756:               SELECT 1
2919 @ 28759:               PUSH   V
2920 @ 28762:               SELECT 1
2921 @ 28765:               OR    
2922 @ 28766:               PUSH   V
2923 @ 28769:               SELECT 1
2924 @ 28772:               JUMPIF # L_000a
2925 @ 28776:               PUSH   W
2926 @ 28779:               PUSH   P
2927 @ 28782:               ACCESS
2928 @ 28783:               SELECT 2
2929 @ 28786:               PUSH   V
2930 @ 28789:               SELECT 2
2931 @ 28792:               OR    
2932 @ 28793:               PUSH   V
2933 @ 28796:               SELECT 2
2934 @ 28799:               JUMPIF # L_000a

   493          v_outs = v_outs&(\w(p)_outs)
2935 @ 28803:               LINE   493 "regression-compile-tmp/nminimo.imp"
2936 @ 28841:               PUSH   V
2937 @ 28844:               SELECT 3
2938 @ 28847:               PUSH   V
2939 @ 28850:               SELECT 3
2940 @ 28853:               PUSH   W
2941 @ 28856:               PUSH   P
2942 @ 28859:               ACCESS
2943 @ 28860:               SELECT 3
2944 @ 28863:               NOT   
2945 @ 28864:               AND   
2946 @ 28865:               ASSVAL

   494          %exit %if v_outs = 0
2947 @ 28866:               LINE   494 "regression-compile-tmp/nminimo.imp"
2948 @ 28904:               PUSH   V
2949 @ 28907:               SELECT 3
2950 @ 28910:               PUSHI  #0x00000000
2951 @ 28915:               JUMPIF # L_000d
2952 @ 28919:               GOTO   L_0007
2953 @ 28922:               LOCATE L_000d

   495          same = p %if w(p)_t = v_t %and w(p)_f = v_f
2954 @ 28925:               LINE   495 "regression-compile-tmp/nminimo.imp"
2955 @ 28963:               PUSH   W
2956 @ 28966:               PUSH   P
2957 @ 28969:               ACCESS
2958 @ 28970:               SELECT 1
2959 @ 28973:               PUSH   V
2960 @ 28976:               SELECT 1
2961 @ 28979:               JUMPIF # L_000d
2962 @ 28983:               PUSH   W
2963 @ 28986:               PUSH   P
2964 @ 28989:               ACCESS
2965 @ 28990:               SELECT 2
2966 @ 28993:               PUSH   V
2967 @ 28996:               SELECT 2
2968 @ 28999:               JUMPIF # L_000d
2969 @ 29003:               PUSH   SAME
2970 @ 29006:               PUSH   P
2971 @ 29009:               ASSVAL
2972 @ 29010:               LOCATE L_000d

   496        %finish
2973 @ 29013:               LINE   496 "regression-compile-tmp/nminimo.imp"
2974 @ 29051:               LOCATE L_000a

   497        p = p+1
2975 @ 29054:               LINE   497 "regression-compile-tmp/nminimo.imp"
2976 @ 29092:               PUSH   P
2977 @ 29095:               PUSH   P
2978 @ 29098:               PUSHI  #0x00000001
2979 @ 29103:               ADD   
2980 @ 29104:               ASSVAL

   498      %repeat
2981 @ 29105:               LINE   498 "regression-compile-tmp/nminimo.imp"
2982 @ 29143:               REPEAT L_0006
2983 @ 29146:               LOCATE L_0007

   499      %if v_outs # 0 %start
2984 @ 29149:               LINE   499 "regression-compile-tmp/nminimo.imp"
2985 @ 29187:               PUSH   V
2986 @ 29190:               SELECT 3
2987 @ 29193:               PUSHI  #0x00000000
2988 @ 29198:               JUMPIF = L_0007

   500        %while p # sp1 %cycle
2989 @ 29202:               LINE   500 "regression-compile-tmp/nminimo.imp"
2990 @ 29240:               LOCATE L_0009
2991 @ 29243:               PUSH   P
2992 @ 29246:               PUSH   SP1
2993 @ 29249:               JUMPIF = L_000a

   501          p = p-1
2994 @ 29253:               LINE   501 "regression-compile-tmp/nminimo.imp"
2995 @ 29291:               PUSH   P
2996 @ 29294:               PUSH   P
2997 @ 29297:               PUSHI  #0x00000001
2998 @ 29302:               SUB   
2999 @ 29303:               ASSVAL

   502          n_outs = w(p)_outs&v_outs
3000 @ 29304:               LINE   502 "regression-compile-tmp/nminimo.imp"
3001 @ 29342:               PUSH   N
3002 @ 29345:               SELECT 3
3003 @ 29348:               PUSH   W
3004 @ 29351:               PUSH   P
3005 @ 29354:               ACCESS
3006 @ 29355:               SELECT 3
3007 @ 29358:               PUSH   V
3008 @ 29361:               SELECT 3
3009 @ 29364:               AND   
3010 @ 29365:               ASSVAL

   503          %if n_outs # 0 %start
3011 @ 29366:               LINE   503 "regression-compile-tmp/nminimo.imp"
3012 @ 29404:               PUSH   N
3013 @ 29407:               SELECT 3
3014 @ 29410:               PUSHI  #0x00000000
3015 @ 29415:               JUMPIF = L_000d

   504            n_t = w(p)_t!v_t;  n_f = w(p)_f!v_f
3016 @ 29419:               LINE   504 "regression-compile-tmp/nminimo.imp"
3017 @ 29457:               PUSH   N
3018 @ 29460:               SELECT 1
3019 @ 29463:               PUSH   W
3020 @ 29466:               PUSH   P
3021 @ 29469:               ACCESS
3022 @ 29470:               SELECT 1
3023 @ 29473:               PUSH   V
3024 @ 29476:               SELECT 1
3025 @ 29479:               OR    
3026 @ 29480:               ASSVAL
3027 @ 29481:               LINE   504 "regression-compile-tmp/nminimo.imp"
3028 @ 29519:               PUSH   N
3029 @ 29522:               SELECT 2
3030 @ 29525:               PUSH   W
3031 @ 29528:               PUSH   P
3032 @ 29531:               ACCESS
3033 @ 29532:               SELECT 2
3034 @ 29535:               PUSH   V
3035 @ 29538:               SELECT 2
3036 @ 29541:               OR    
3037 @ 29542:               ASSVAL

   505            k = (n_t)&n_f
3038 @ 29543:               LINE   505 "regression-compile-tmp/nminimo.imp"
3039 @ 29581:               PUSH   K
3040 @ 29584:               PUSH   N
3041 @ 29587:               SELECT 1
3042 @ 29590:               PUSH   N
3043 @ 29593:               SELECT 2
3044 @ 29596:               AND   
3045 @ 29597:               ASSVAL

   506            %if k # 0 %and (k-1)&k = 0 %start; !singleton
3046 @ 29598:               LINE   506 "regression-compile-tmp/nminimo.imp"
3047 @ 29636:               PUSH   K
3048 @ 29639:               PUSHI  #0x00000000
3049 @ 29644:               JUMPIF = L_0010
3050 @ 29648:               PUSH   K
3051 @ 29651:               PUSHI  #0x00000001
3052 @ 29656:               SUB   
3053 @ 29657:               PUSH   K
3054 @ 29660:               AND   
3055 @ 29661:               PUSHI  #0x00000000
3056 @ 29666:               JUMPIF # L_0010

   507              n_t = n_t!!k;  n_f = n_f!!k
3057 @ 29670:               LINE   507 "regression-compile-tmp/nminimo.imp"
3058 @ 29708:               PUSH   N
3059 @ 29711:               SELECT 1
3060 @ 29714:               PUSH   N
3061 @ 29717:               SELECT 1
3062 @ 29720:               PUSH   K
3063 @ 29723:               XOR   
3064 @ 29724:               ASSVAL
3065 @ 29725:               LINE   507 "regression-compile-tmp/nminimo.imp"
3066 @ 29763:               PUSH   N
3067 @ 29766:               SELECT 2
3068 @ 29769:               PUSH   N
3069 @ 29772:               SELECT 2
3070 @ 29775:               PUSH   K
3071 @ 29778:               XOR   
3072 @ 29779:               ASSVAL

   508              push(n)
3073 @ 29780:               LINE   508 "regression-compile-tmp/nminimo.imp"
3074 @ 29818:               PUSH   PUSH
3075 @ 29821:               PUSH   N
3076 @ 29824:               ASSPAR
3077 @ 29825:               CALL  

   509              v_outs = v_outs!!n_outs %if n_t!v_t = v_t %and n_f!v_f = v_f; !V -> N
3078 @ 29826:               LINE   509 "regression-compile-tmp/nminimo.imp"
3079 @ 29864:               PUSH   N
3080 @ 29867:               SELECT 1
3081 @ 29870:               PUSH   V
3082 @ 29873:               SELECT 1
3083 @ 29876:               OR    
3084 @ 29877:               PUSH   V
3085 @ 29880:               SELECT 1
3086 @ 29883:               JUMPIF # L_0013
3087 @ 29887:               PUSH   N
3088 @ 29890:               SELECT 2
3089 @ 29893:               PUSH   V
3090 @ 29896:               SELECT 2
3091 @ 29899:               OR    
3092 @ 29900:               PUSH   V
3093 @ 29903:               SELECT 2
3094 @ 29906:               JUMPIF # L_0013
3095 @ 29910:               PUSH   V
3096 @ 29913:               SELECT 3
3097 @ 29916:               PUSH   V
3098 @ 29919:               SELECT 3
3099 @ 29922:               PUSH   N
3100 @ 29925:               SELECT 3
3101 @ 29928:               XOR   
3102 @ 29929:               ASSVAL
3103 @ 29930:               LOCATE L_0013

   510              n_t = n_t!w(p)_t;  n_f = n_f!w(p)_f
3104 @ 29933:               LINE   510 "regression-compile-tmp/nminimo.imp"
3105 @ 29971:               PUSH   N
3106 @ 29974:               SELECT 1
3107 @ 29977:               PUSH   N
3108 @ 29980:               SELECT 1
3109 @ 29983:               PUSH   W
3110 @ 29986:               PUSH   P
3111 @ 29989:               ACCESS
3112 @ 29990:               SELECT 1
3113 @ 29993:               OR    
3114 @ 29994:               ASSVAL
3115 @ 29995:               LINE   510 "regression-compile-tmp/nminimo.imp"
3116 @ 30033:               PUSH   N
3117 @ 30036:               SELECT 2
3118 @ 30039:               PUSH   N
3119 @ 30042:               SELECT 2
3120 @ 30045:               PUSH   W
3121 @ 30048:               PUSH   P
3122 @ 30051:               ACCESS
3123 @ 30052:               SELECT 2
3124 @ 30055:               OR    
3125 @ 30056:               ASSVAL

   511            %finish
3126 @ 30057:               LINE   511 "regression-compile-tmp/nminimo.imp"
3127 @ 30095:               LOCATE L_0010

   512            %if n_t = w(p)_t %and n_f = w(p)_f %start;  !@P -> N
3128 @ 30098:               LINE   512 "regression-compile-tmp/nminimo.imp"
3129 @ 30136:               PUSH   N
3130 @ 30139:               SELECT 1
3131 @ 30142:               PUSH   W
3132 @ 30145:               PUSH   P
3133 @ 30148:               ACCESS
3134 @ 30149:               SELECT 1
3135 @ 30152:               JUMPIF # L_0010
3136 @ 30156:               PUSH   N
3137 @ 30159:               SELECT 2
3138 @ 30162:               PUSH   W
3139 @ 30165:               PUSH   P
3140 @ 30168:               ACCESS
3141 @ 30169:               SELECT 2
3142 @ 30172:               JUMPIF # L_0010

   513              w(p)_outs = w(p)_outs!!n_outs
3143 @ 30176:               LINE   513 "regression-compile-tmp/nminimo.imp"
3144 @ 30214:               PUSH   W
3145 @ 30217:               PUSH   P
3146 @ 30220:               ACCESS
3147 @ 30221:               SELECT 3
3148 @ 30224:               PUSH   W
3149 @ 30227:               PUSH   P
3150 @ 30230:               ACCESS
3151 @ 30231:               SELECT 3
3152 @ 30234:               PUSH   N
3153 @ 30237:               SELECT 3
3154 @ 30240:               XOR   
3155 @ 30241:               ASSVAL

   514              %if w(p)_outs = 0 %start
3156 @ 30242:               LINE   514 "regression-compile-tmp/nminimo.imp"
3157 @ 30280:               PUSH   W
3158 @ 30283:               PUSH   P
3159 @ 30286:               ACCESS
3160 @ 30287:               SELECT 3
3161 @ 30290:               PUSHI  #0x00000000
3162 @ 30295:               JUMPIF # L_0013

   515                erase(p)
3163 @ 30299:               LINE   515 "regression-compile-tmp/nminimo.imp"
3164 @ 30337:               PUSH   ERASE
3165 @ 30340:               PUSH   P
3166 @ 30343:               ASSPAR
3167 @ 30344:               CALL  

   516                same = same-1 %if same > p
3168 @ 30345:               LINE   516 "regression-compile-tmp/nminimo.imp"
3169 @ 30383:               PUSH   SAME
3170 @ 30386:               PUSH   P
3171 @ 30389:               JUMPIF <= L_0016
3172 @ 30393:               PUSH   SAME
3173 @ 30396:               PUSH   SAME
3174 @ 30399:               PUSHI  #0x00000001
3175 @ 30404:               SUB   
3176 @ 30405:               ASSVAL
3177 @ 30406:               LOCATE L_0016

   517              %finish
3178 @ 30409:               LINE   517 "regression-compile-tmp/nminimo.imp"
3179 @ 30447:               LOCATE L_0013

   518            %finish
3180 @ 30450:               LINE   518 "regression-compile-tmp/nminimo.imp"
3181 @ 30488:               LOCATE L_0010

   519            %exit %if v_outs = 0
3182 @ 30491:               LINE   519 "regression-compile-tmp/nminimo.imp"
3183 @ 30529:               PUSH   V
3184 @ 30532:               SELECT 3
3185 @ 30535:               PUSHI  #0x00000000
3186 @ 30540:               JUMPIF # L_0010
3187 @ 30544:               GOTO   L_000a
3188 @ 30547:               LOCATE L_0010

   520          %finish
3189 @ 30550:               LINE   520 "regression-compile-tmp/nminimo.imp"
3190 @ 30588:               LOCATE L_000d

   521        %repeat
3191 @ 30591:               LINE   521 "regression-compile-tmp/nminimo.imp"
3192 @ 30629:               REPEAT L_0009
3193 @ 30632:               LOCATE L_000a

   522        %if v_outs # 0 %start
3194 @ 30635:               LINE   522 "regression-compile-tmp/nminimo.imp"
3195 @ 30673:               PUSH   V
3196 @ 30676:               SELECT 3
3197 @ 30679:               PUSHI  #0x00000000
3198 @ 30684:               JUMPIF = L_000a

   523          %if same = 0 %start
3199 @ 30688:               LINE   523 "regression-compile-tmp/nminimo.imp"
3200 @ 30726:               PUSH   SAME
3201 @ 30729:               PUSHI  #0x00000000
3202 @ 30734:               JUMPIF # L_000d

   524            w(sp) = v;  sp = sp+1
3203 @ 30738:               LINE   524 "regression-compile-tmp/nminimo.imp"
3204 @ 30776:               PUSH   W
3205 @ 30779:               PUSH   SP
3206 @ 30782:               ACCESS
3207 @ 30783:               PUSH   V
3208 @ 30786:               ASSVAL
3209 @ 30787:               LINE   524 "regression-compile-tmp/nminimo.imp"
3210 @ 30825:               PUSH   SP
3211 @ 30828:               PUSH   SP
3212 @ 30831:               PUSHI  #0x00000001
3213 @ 30836:               ADD   
3214 @ 30837:               ASSVAL

   525          %finish %else %start
3215 @ 30838:               LINE   525 "regression-compile-tmp/nminimo.imp"
3216 @ 30876:               GOTO   L_000c
3217 @ 30879:               LOCATE L_000d

   526            w(same)_outs = w(same)_outs+v_outs
3218 @ 30882:               LINE   526 "regression-compile-tmp/nminimo.imp"
3219 @ 30920:               PUSH   W
3220 @ 30923:               PUSH   SAME
3221 @ 30926:               ACCESS
3222 @ 30927:               SELECT 3
3223 @ 30930:               PUSH   W
3224 @ 30933:               PUSH   SAME
3225 @ 30936:               ACCESS
3226 @ 30937:               SELECT 3
3227 @ 30940:               PUSH   V
3228 @ 30943:               SELECT 3
3229 @ 30946:               ADD   
3230 @ 30947:               ASSVAL

   527          %finish
3231 @ 30948:               LINE   527 "regression-compile-tmp/nminimo.imp"
3232 @ 30986:               LOCATE L_000c

   528        %finish
3233 @ 30989:               LINE   528 "regression-compile-tmp/nminimo.imp"
3234 @ 31027:               LOCATE L_000a

   529      %finish
3235 @ 31030:               LINE   529 "regression-compile-tmp/nminimo.imp"
3236 @ 31068:               LOCATE L_0007

   530    %repeat
3237 @ 31071:               LINE   530 "regression-compile-tmp/nminimo.imp"
3238 @ 31109:               REPEAT L_0003
3239 @ 31112:               LOCATE L_0004

   531  %end
   532  
   533  ! C o n v e r t   f r o m   P o l i s h   t o   i n t e r n a l 
   534  !
3240 @ 31115:               LINE   531 "regression-compile-tmp/nminimo.imp"
3241 @ 31153:            END    _lev0id0_MERGE {lev=2 --> 1}

   535  %routine convert
3242 @ 31154:            LINE   535 "regression-compile-tmp/nminimo.imp"
3243 @ 31192:            DEF    CONVERT (_lev0id0_CONVERT) p1=V_00ba a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3244 @ 31211:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
3245 @ 31212:               FINISH ) {lev=2}

   536  %integer outbit,oldsp,i,j,k,p,q,hp,inv
3246 @ 31213:               LINE   536 "regression-compile-tmp/nminimo.imp"
3247 @ 31251:               DEF    OUTBIT p1=V_00bb a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3248 @ 31269:               DEF    OLDSP p1=V_00bc a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3249 @ 31286:               DEF    I p1=V_00bd a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3250 @ 31299:               DEF    J p1=V_00be a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3251 @ 31312:               DEF    K p1=V_00bf a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3252 @ 31325:               DEF    P p1=V_00c0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3253 @ 31338:               DEF    Q p1=V_00c1 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3254 @ 31351:               DEF    HP p1=V_00c2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3255 @ 31365:               DEF    INV p1=V_00c3 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   537  %ownrecord(cell) v=0
3256 @ 31380:               LINE   537 "regression-compile-tmp/nminimo.imp"
3257 @ 31418:               PUSHI  #0x00000000
3258 @ 31423:               DEF    V p1=V_00c4 a/tf=41 b/format=a5 c/ostate=21  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
3259 @ 31436:               INIT   1

   538  %integerarray hold(1:20)
   539  
3260 @ 31439:               LINE   538 "regression-compile-tmp/nminimo.imp"
3261 @ 31477:               DEF    HOLD p1=V_00c5 a/tf=1b b/format=1 c/ostate=100  type=1 (integer) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3262 @ 31493:               PUSHI  #0x00000001
3263 @ 31498:               PUSHI  #0x00000014
3264 @ 31503:               DIM    0001 0001

   540  %routine convert(%integer j)
3265 @ 31509:               LINE   540 "regression-compile-tmp/nminimo.imp"
3266 @ 31547:               DEF    CONVERT (_lev0id0_CONVERT_CONVERT) p1=V_00c6 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3267 @ 31566:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
3268 @ 31567:                     DEF    J p1=V_00c7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3269 @ 31580:                  FINISH ) {lev=3}

   541  %integer defp
3270 @ 31581:                  LINE   541 "regression-compile-tmp/nminimo.imp"
3271 @ 31619:                  DEF    DEFP p1=V_00c8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   542    defp = exp(j)
3272 @ 31635:                  LINE   542 "regression-compile-tmp/nminimo.imp"
3273 @ 31673:                  PUSH   DEFP
3274 @ 31676:                  PUSH   EXP
3275 @ 31679:                  PUSH   J
3276 @ 31682:                  ACCESS
3277 @ 31683:                  ASSVAL

   543    %cycle
3278 @ 31684:                  LINE   543 "regression-compile-tmp/nminimo.imp"
3279 @ 31722:                  LOCATE L_0003

   544      j = def(defp);  defp = defp+1;      !get next item
3280 @ 31725:                  LINE   544 "regression-compile-tmp/nminimo.imp"
3281 @ 31763:                  PUSH   J
3282 @ 31766:                  PUSH   DEF
3283 @ 31769:                  PUSH   DEFP
3284 @ 31772:                  ACCESS
3285 @ 31773:                  ASSVAL
3286 @ 31774:                  LINE   544 "regression-compile-tmp/nminimo.imp"
3287 @ 31812:                  PUSH   DEFP
3288 @ 31815:                  PUSH   DEFP
3289 @ 31818:                  PUSHI  #0x00000001
3290 @ 31823:                  ADD   
3291 @ 31824:                  ASSVAL

   545      %return %if j = 0;                  !terminator
3292 @ 31825:                  LINE   545 "regression-compile-tmp/nminimo.imp"
3293 @ 31863:                  PUSH   J
3294 @ 31866:                  PUSHI  #0x00000000
3295 @ 31871:                  JUMPIF # L_0007
3296 @ 31875:                  RETURN
3297 @ 31876:                  LOCATE L_0007

   546      %if j > 0 %start;                   !operand
3298 @ 31879:                  LINE   546 "regression-compile-tmp/nminimo.imp"
3299 @ 31917:                  PUSH   J
3300 @ 31920:                  PUSHI  #0x00000000
3301 @ 31925:                  JUMPIF <= L_0007

   547        %if j > inmax %start;             !start of sub-def
3302 @ 31929:                  LINE   547 "regression-compile-tmp/nminimo.imp"
3303 @ 31967:                  PUSH   J
3304 @ 31970:                  PUSH   INMAX
3305 @ 31973:                  JUMPIF <= L_000a

   548          convert(j)
3306 @ 31977:                  LINE   548 "regression-compile-tmp/nminimo.imp"
3307 @ 32015:                  PUSH   CONVERT
3308 @ 32018:                  PUSH   J
3309 @ 32021:                  ASSPAR
3310 @ 32022:                  CALL  

   549        %finish %else %start
3311 @ 32023:                  LINE   549 "regression-compile-tmp/nminimo.imp"
3312 @ 32061:                  GOTO   L_0009
3313 @ 32064:                  LOCATE L_000a

   550          hp = hp+1;  hold(hp) = sp1
3314 @ 32067:                  LINE   550 "regression-compile-tmp/nminimo.imp"
3315 @ 32105:                  PUSH   HP
3316 @ 32108:                  PUSH   HP
3317 @ 32111:                  PUSHI  #0x00000001
3318 @ 32116:                  ADD   
3319 @ 32117:                  ASSVAL
3320 @ 32118:                  LINE   550 "regression-compile-tmp/nminimo.imp"
3321 @ 32156:                  PUSH   HOLD
3322 @ 32159:                  PUSH   HP
3323 @ 32162:                  ACCESS
3324 @ 32163:                  PUSH   SP1
3325 @ 32166:                  ASSVAL

   551          sp1 = sp
3326 @ 32167:                  LINE   551 "regression-compile-tmp/nminimo.imp"
3327 @ 32205:                  PUSH   SP1
3328 @ 32208:                  PUSH   SP
3329 @ 32211:                  ASSVAL

   552          v_t = exp(j);  v_f = 0
3330 @ 32212:                  LINE   552 "regression-compile-tmp/nminimo.imp"
3331 @ 32250:                  PUSH   V
3332 @ 32253:                  SELECT 1
3333 @ 32256:                  PUSH   EXP
3334 @ 32259:                  PUSH   J
3335 @ 32262:                  ACCESS
3336 @ 32263:                  ASSVAL
3337 @ 32264:                  LINE   552 "regression-compile-tmp/nminimo.imp"
3338 @ 32302:                  PUSH   V
3339 @ 32305:                  SELECT 2
3340 @ 32308:                  PUSHI  #0x00000000
3341 @ 32313:                  ASSVAL

   553          v_f = v_t %and v_t = 0 %if inv!!(negin>>(j-1)&1) # 0
3342 @ 32314:                  LINE   553 "regression-compile-tmp/nminimo.imp"
3343 @ 32352:                  PUSH   INV
3344 @ 32355:                  PUSH   NEGIN
3345 @ 32358:                  PUSH   J
3346 @ 32361:                  PUSHI  #0x00000001
3347 @ 32366:                  SUB   
3348 @ 32367:                  RSH   
3349 @ 32368:                  PUSHI  #0x00000001
3350 @ 32373:                  AND   
3351 @ 32374:                  XOR   
3352 @ 32375:                  PUSHI  #0x00000000
3353 @ 32380:                  JUMPIF = L_000d
3354 @ 32384:                  PUSH   V
3355 @ 32387:                  SELECT 2
3356 @ 32390:                  PUSH   V
3357 @ 32393:                  SELECT 1
3358 @ 32396:                  ASSVAL
3359 @ 32397:                  PUSH   V
3360 @ 32400:                  SELECT 1
3361 @ 32403:                  PUSHI  #0x00000000
3362 @ 32408:                  ASSVAL
3363 @ 32409:                  LOCATE L_000d

   554          stack(v)
3364 @ 32412:                  LINE   554 "regression-compile-tmp/nminimo.imp"
3365 @ 32450:                  PUSH   STACK
3366 @ 32453:                  PUSH   V
3367 @ 32456:                  ASSPAR
3368 @ 32457:                  CALL  

   555        %finish
3369 @ 32458:                  LINE   555 "regression-compile-tmp/nminimo.imp"
3370 @ 32496:                  LOCATE L_0009

   556      %finish %else %if j = not %start
3371 @ 32499:                  LINE   556 "regression-compile-tmp/nminimo.imp"
3372 @ 32537:                  GOTO   L_0006
3373 @ 32540:                  LOCATE L_0007
3374 @ 32543:                  PUSH   J
3375 @ 32546:                  PUSHI  #0xffffffff
3376 @ 32551:                  JUMPIF # L_0007

   557        inv = inv!!1
3377 @ 32555:                  LINE   557 "regression-compile-tmp/nminimo.imp"
3378 @ 32593:                  PUSH   INV
3379 @ 32596:                  PUSH   INV
3380 @ 32599:                  PUSHI  #0x00000001
3381 @ 32604:                  XOR   
3382 @ 32605:                  ASSVAL

   558      %finish %else %if j-inv = and %start;  !'AND' or inverted 'OR'
3383 @ 32606:                  LINE   558 "regression-compile-tmp/nminimo.imp"
3384 @ 32644:                  GOTO   L_0006
3385 @ 32647:                  LOCATE L_0007
3386 @ 32650:                  PUSH   J
3387 @ 32653:                  PUSH   INV
3388 @ 32656:                  SUB   
3389 @ 32657:                  PUSHI  #0xfffffffd
3390 @ 32662:                  JUMPIF # L_0007

   559        np1 = np;                         !Form pairwise intersection on nest
3391 @ 32666:                  LINE   559 "regression-compile-tmp/nminimo.imp"
3392 @ 32704:                  PUSH   NP1
3393 @ 32707:                  PUSH   NP
3394 @ 32710:                  ASSVAL

   560        %while sp # sp1 %cycle
3395 @ 32711:                  LINE   560 "regression-compile-tmp/nminimo.imp"
3396 @ 32749:                  LOCATE L_0009
3397 @ 32752:                  PUSH   SP
3398 @ 32755:                  PUSH   SP1
3399 @ 32758:                  JUMPIF = L_000a

   561          sp = sp-1
3400 @ 32762:                  LINE   561 "regression-compile-tmp/nminimo.imp"
3401 @ 32800:                  PUSH   SP
3402 @ 32803:                  PUSH   SP
3403 @ 32806:                  PUSHI  #0x00000001
3404 @ 32811:                  SUB   
3405 @ 32812:                  ASSVAL

   562          p = sp1
3406 @ 32813:                  LINE   562 "regression-compile-tmp/nminimo.imp"
3407 @ 32851:                  PUSH   P
3408 @ 32854:                  PUSH   SP1
3409 @ 32857:                  ASSVAL

   563          %while p # hold(hp) %cycle
3410 @ 32858:                  LINE   563 "regression-compile-tmp/nminimo.imp"
3411 @ 32896:                  LOCATE L_000c
3412 @ 32899:                  PUSH   P
3413 @ 32902:                  PUSH   HOLD
3414 @ 32905:                  PUSH   HP
3415 @ 32908:                  ACCESS
3416 @ 32909:                  JUMPIF = L_000d

   564            p = p-1
3417 @ 32913:                  LINE   564 "regression-compile-tmp/nminimo.imp"
3418 @ 32951:                  PUSH   P
3419 @ 32954:                  PUSH   P
3420 @ 32957:                  PUSHI  #0x00000001
3421 @ 32962:                  SUB   
3422 @ 32963:                  ASSVAL

   565            v_t = w(sp)_t!w(p)_t;  v_f = w(sp)_f!w(p)_f
3423 @ 32964:                  LINE   565 "regression-compile-tmp/nminimo.imp"
3424 @ 33002:                  PUSH   V
3425 @ 33005:                  SELECT 1
3426 @ 33008:                  PUSH   W
3427 @ 33011:                  PUSH   SP
3428 @ 33014:                  ACCESS
3429 @ 33015:                  SELECT 1
3430 @ 33018:                  PUSH   W
3431 @ 33021:                  PUSH   P
3432 @ 33024:                  ACCESS
3433 @ 33025:                  SELECT 1
3434 @ 33028:                  OR    
3435 @ 33029:                  ASSVAL
3436 @ 33030:                  LINE   565 "regression-compile-tmp/nminimo.imp"
3437 @ 33068:                  PUSH   V
3438 @ 33071:                  SELECT 2
3439 @ 33074:                  PUSH   W
3440 @ 33077:                  PUSH   SP
3441 @ 33080:                  ACCESS
3442 @ 33081:                  SELECT 2
3443 @ 33084:                  PUSH   W
3444 @ 33087:                  PUSH   P
3445 @ 33090:                  ACCESS
3446 @ 33091:                  SELECT 2
3447 @ 33094:                  OR    
3448 @ 33095:                  ASSVAL

   566            push(v) %if v_t&v_f = 0; !intersection ok
3449 @ 33096:                  LINE   566 "regression-compile-tmp/nminimo.imp"
3450 @ 33134:                  PUSH   V
3451 @ 33137:                  SELECT 1
3452 @ 33140:                  PUSH   V
3453 @ 33143:                  SELECT 2
3454 @ 33146:                  AND   
3455 @ 33147:                  PUSHI  #0x00000000
3456 @ 33152:                  JUMPIF # L_0010
3457 @ 33156:                  PUSH   PUSH
3458 @ 33159:                  PUSH   V
3459 @ 33162:                  ASSPAR
3460 @ 33163:                  CALL  
3461 @ 33164:                  LOCATE L_0010

   567          %repeat
3462 @ 33167:                  LINE   567 "regression-compile-tmp/nminimo.imp"
3463 @ 33205:                  REPEAT L_000c
3464 @ 33208:                  LOCATE L_000d

   568        %repeat
3465 @ 33211:                  LINE   568 "regression-compile-tmp/nminimo.imp"
3466 @ 33249:                  REPEAT L_0009
3467 @ 33252:                  LOCATE L_000a

   569        sp1 = hold(hp);  hp = hp-1
3468 @ 33255:                  LINE   569 "regression-compile-tmp/nminimo.imp"
3469 @ 33293:                  PUSH   SP1
3470 @ 33296:                  PUSH   HOLD
3471 @ 33299:                  PUSH   HP
3472 @ 33302:                  ACCESS
3473 @ 33303:                  ASSVAL
3474 @ 33304:                  LINE   569 "regression-compile-tmp/nminimo.imp"
3475 @ 33342:                  PUSH   HP
3476 @ 33345:                  PUSH   HP
3477 @ 33348:                  PUSHI  #0x00000001
3478 @ 33353:                  SUB   
3479 @ 33354:                  ASSVAL

   570        sp = sp1;                         !start with stack empty
3480 @ 33355:                  LINE   570 "regression-compile-tmp/nminimo.imp"
3481 @ 33393:                  PUSH   SP
3482 @ 33396:                  PUSH   SP1
3483 @ 33399:                  ASSVAL

   571        merge
3484 @ 33400:                  LINE   571 "regression-compile-tmp/nminimo.imp"
3485 @ 33438:                  PUSH   MERGE
3486 @ 33441:                  CALL  

   572      %finish %else %start;               !'OR' or inverted 'AND'
3487 @ 33442:                  LINE   572 "regression-compile-tmp/nminimo.imp"
3488 @ 33480:                  GOTO   L_0006
3489 @ 33483:                  LOCATE L_0007

   573        copydown;                         !one operand to nest
3490 @ 33486:                  LINE   573 "regression-compile-tmp/nminimo.imp"
3491 @ 33524:                  PUSH   COPYDOWN
3492 @ 33527:                  CALL  

   574        sp1 = hold(hp);  hp = hp-1
3493 @ 33528:                  LINE   574 "regression-compile-tmp/nminimo.imp"
3494 @ 33566:                  PUSH   SP1
3495 @ 33569:                  PUSH   HOLD
3496 @ 33572:                  PUSH   HP
3497 @ 33575:                  ACCESS
3498 @ 33576:                  ASSVAL
3499 @ 33577:                  LINE   574 "regression-compile-tmp/nminimo.imp"
3500 @ 33615:                  PUSH   HP
3501 @ 33618:                  PUSH   HP
3502 @ 33621:                  PUSHI  #0x00000001
3503 @ 33626:                  SUB   
3504 @ 33627:                  ASSVAL

   575        merge
3505 @ 33628:                  LINE   575 "regression-compile-tmp/nminimo.imp"
3506 @ 33666:                  PUSH   MERGE
3507 @ 33669:                  CALL  

   576      %finish
3508 @ 33670:                  LINE   576 "regression-compile-tmp/nminimo.imp"
3509 @ 33708:                  LOCATE L_0006

   577    %repeat
3510 @ 33711:                  LINE   577 "regression-compile-tmp/nminimo.imp"
3511 @ 33749:                  REPEAT L_0003

   578  %end
   579  
3512 @ 33752:                  LINE   578 "regression-compile-tmp/nminimo.imp"
3513 @ 33790:               END    _lev0id0_CONVERT_CONVERT {lev=3 --> 2}

   580  sp = 1;  np = storebound;  minsep = np-sp
3514 @ 33791:               LINE   580 "regression-compile-tmp/nminimo.imp"
3515 @ 33829:               PUSH   SP
3516 @ 33832:               PUSHI  #0x00000001
3517 @ 33837:               ASSVAL
3518 @ 33838:               LINE   580 "regression-compile-tmp/nminimo.imp"
3519 @ 33876:               PUSH   NP
3520 @ 33879:               PUSHI  #0x000007d0
3521 @ 33884:               ASSVAL
3522 @ 33885:               LINE   580 "regression-compile-tmp/nminimo.imp"
3523 @ 33923:               PUSH   MINSEP
3524 @ 33926:               PUSH   NP
3525 @ 33929:               PUSH   SP
3526 @ 33932:               SUB   
3527 @ 33933:               ASSVAL

   581  v_flags = 0
3528 @ 33934:               LINE   581 "regression-compile-tmp/nminimo.imp"
3529 @ 33972:               PUSH   V
3530 @ 33975:               SELECT 4
3531 @ 33978:               PUSHI  #0x00000000
3532 @ 33983:               ASSVAL

   582  outbit = 1
3533 @ 33984:               LINE   582 "regression-compile-tmp/nminimo.imp"
3534 @ 34022:               PUSH   OUTBIT
3535 @ 34025:               PUSHI  #0x00000001
3536 @ 34030:               ASSVAL

   583  %for i = outmin,1,namemax %cycle
3537 @ 34031:               LINE   583 "regression-compile-tmp/nminimo.imp"
3538 @ 34069:               PUSH   I
3539 @ 34072:               PUSHI  #0x00000001
3540 @ 34077:               PUSH   NAMEMAX
3541 @ 34080:               PUSH   OUTMIN
3542 @ 34083:               FOR    L_0003

   584  %if ignorout&outbit = 0 %start
3543 @ 34086:               LINE   584 "regression-compile-tmp/nminimo.imp"
3544 @ 34124:               PUSH   IGNOROUT
3545 @ 34127:               PUSH   OUTBIT
3546 @ 34130:               AND   
3547 @ 34131:               PUSHI  #0x00000000
3548 @ 34136:               JUMPIF # L_0007

   585    k = def(exp(i)+1);                    !2nd element of def
3549 @ 34140:               LINE   585 "regression-compile-tmp/nminimo.imp"
3550 @ 34178:               PUSH   K
3551 @ 34181:               PUSH   DEF
3552 @ 34184:               PUSH   EXP
3553 @ 34187:               PUSH   I
3554 @ 34190:               ACCESS
3555 @ 34191:               PUSHI  #0x00000001
3556 @ 34196:               ADD   
3557 @ 34197:               ACCESS
3558 @ 34198:               ASSVAL

   586    %if k # 0 %start;                     !"Don't cares" present
3559 @ 34199:               LINE   586 "regression-compile-tmp/nminimo.imp"
3560 @ 34237:               PUSH   K
3561 @ 34240:               PUSHI  #0x00000000
3562 @ 34245:               JUMPIF = L_000a

   587      sp1 = 1;  hp = 0;  inv = 0
3563 @ 34249:               LINE   587 "regression-compile-tmp/nminimo.imp"
3564 @ 34287:               PUSH   SP1
3565 @ 34290:               PUSHI  #0x00000001
3566 @ 34295:               ASSVAL
3567 @ 34296:               LINE   587 "regression-compile-tmp/nminimo.imp"
3568 @ 34334:               PUSH   HP
3569 @ 34337:               PUSHI  #0x00000000
3570 @ 34342:               ASSVAL
3571 @ 34343:               LINE   587 "regression-compile-tmp/nminimo.imp"
3572 @ 34381:               PUSH   INV
3573 @ 34384:               PUSHI  #0x00000000
3574 @ 34389:               ASSVAL

   588      v_outs = outbit
3575 @ 34390:               LINE   588 "regression-compile-tmp/nminimo.imp"
3576 @ 34428:               PUSH   V
3577 @ 34431:               SELECT 3
3578 @ 34434:               PUSH   OUTBIT
3579 @ 34437:               ASSVAL

   589      convert(k)
3580 @ 34438:               LINE   589 "regression-compile-tmp/nminimo.imp"
3581 @ 34476:               PUSH   CONVERT
3582 @ 34479:               PUSH   K
3583 @ 34482:               ASSPAR
3584 @ 34483:               CALL  

   590      copydown
3585 @ 34484:               LINE   590 "regression-compile-tmp/nminimo.imp"
3586 @ 34522:               PUSH   COPYDOWN
3587 @ 34525:               CALL  

   591      sp1 = 1
3588 @ 34526:               LINE   591 "regression-compile-tmp/nminimo.imp"
3589 @ 34564:               PUSH   SP1
3590 @ 34567:               PUSHI  #0x00000001
3591 @ 34572:               ASSVAL

   592      merge
3592 @ 34573:               LINE   592 "regression-compile-tmp/nminimo.imp"
3593 @ 34611:               PUSH   MERGE
3594 @ 34614:               CALL  

   593    %finish
3595 @ 34615:               LINE   593 "regression-compile-tmp/nminimo.imp"
3596 @ 34653:               LOCATE L_000a

   594  %finish
3597 @ 34656:               LINE   594 "regression-compile-tmp/nminimo.imp"
3598 @ 34694:               LOCATE L_0007

   595  outbit = outbit<<1
3599 @ 34697:               LINE   595 "regression-compile-tmp/nminimo.imp"
3600 @ 34735:               PUSH   OUTBIT
3601 @ 34738:               PUSH   OUTBIT
3602 @ 34741:               PUSHI  #0x00000001
3603 @ 34746:               LSH   
3604 @ 34747:               ASSVAL

   596  %repeat
3605 @ 34748:               LINE   596 "regression-compile-tmp/nminimo.imp"
3606 @ 34786:               REPEAT L_0003
3607 @ 34789:               LOCATE L_0004

   597  dclim = sp
3608 @ 34792:               LINE   597 "regression-compile-tmp/nminimo.imp"
3609 @ 34830:               PUSH   DCLIM
3610 @ 34833:               PUSH   SP
3611 @ 34836:               ASSVAL

   598  outbit = 1
3612 @ 34837:               LINE   598 "regression-compile-tmp/nminimo.imp"
3613 @ 34875:               PUSH   OUTBIT
3614 @ 34878:               PUSHI  #0x00000001
3615 @ 34883:               ASSVAL

   599  %for i = outmin,1,namemax %cycle
3616 @ 34884:               LINE   599 "regression-compile-tmp/nminimo.imp"
3617 @ 34922:               PUSH   I
3618 @ 34925:               PUSHI  #0x00000001
3619 @ 34930:               PUSH   NAMEMAX
3620 @ 34933:               PUSH   OUTMIN
3621 @ 34936:               FOR    L_0003

   600  %if ignorout&outbit = 0 %start
3622 @ 34939:               LINE   600 "regression-compile-tmp/nminimo.imp"
3623 @ 34977:               PUSH   IGNOROUT
3624 @ 34980:               PUSH   OUTBIT
3625 @ 34983:               AND   
3626 @ 34984:               PUSHI  #0x00000000
3627 @ 34989:               JUMPIF # L_0007

   601    sp1 = 1;  hp = 0;  inv = negout>>(i-outmin)&1
3628 @ 34993:               LINE   601 "regression-compile-tmp/nminimo.imp"
3629 @ 35031:               PUSH   SP1
3630 @ 35034:               PUSHI  #0x00000001
3631 @ 35039:               ASSVAL
3632 @ 35040:               LINE   601 "regression-compile-tmp/nminimo.imp"
3633 @ 35078:               PUSH   HP
3634 @ 35081:               PUSHI  #0x00000000
3635 @ 35086:               ASSVAL
3636 @ 35087:               LINE   601 "regression-compile-tmp/nminimo.imp"
3637 @ 35125:               PUSH   INV
3638 @ 35128:               PUSH   NEGOUT
3639 @ 35131:               PUSH   I
3640 @ 35134:               PUSH   OUTMIN
3641 @ 35137:               SUB   
3642 @ 35138:               RSH   
3643 @ 35139:               PUSHI  #0x00000001
3644 @ 35144:               AND   
3645 @ 35145:               ASSVAL

   602    v_outs = outbit
3646 @ 35146:               LINE   602 "regression-compile-tmp/nminimo.imp"
3647 @ 35184:               PUSH   V
3648 @ 35187:               SELECT 3
3649 @ 35190:               PUSH   OUTBIT
3650 @ 35193:               ASSVAL

   603    convert(i)
3651 @ 35194:               LINE   603 "regression-compile-tmp/nminimo.imp"
3652 @ 35232:               PUSH   CONVERT
3653 @ 35235:               PUSH   I
3654 @ 35238:               ASSPAR
3655 @ 35239:               CALL  

   604    copydown
3656 @ 35240:               LINE   604 "regression-compile-tmp/nminimo.imp"
3657 @ 35278:               PUSH   COPYDOWN
3658 @ 35281:               CALL  

   605    sp1 = dclim
3659 @ 35282:               LINE   605 "regression-compile-tmp/nminimo.imp"
3660 @ 35320:               PUSH   SP1
3661 @ 35323:               PUSH   DCLIM
3662 @ 35326:               ASSVAL

   606    %if single # 0 %then merge %else %start
3663 @ 35327:               LINE   606 "regression-compile-tmp/nminimo.imp"
3664 @ 35365:               PUSH   SINGLE
3665 @ 35368:               PUSHI  #0x00000000
3666 @ 35373:               JUMPIF = L_000a
3667 @ 35377:               PUSH   MERGE
3668 @ 35380:               CALL  
3669 @ 35381:               GOTO   L_0009
3670 @ 35384:               LOCATE L_000a

   607      oldsp = sp
3671 @ 35387:               LINE   607 "regression-compile-tmp/nminimo.imp"
3672 @ 35425:               PUSH   OLDSP
3673 @ 35428:               PUSH   SP
3674 @ 35431:               ASSVAL

   608      %while np # np1 %cycle;             !each element against rest
3675 @ 35432:               LINE   608 "regression-compile-tmp/nminimo.imp"
3676 @ 35470:               LOCATE L_000c
3677 @ 35473:               PUSH   NP
3678 @ 35476:               PUSH   NP1
3679 @ 35479:               JUMPIF = L_000d

   609        q = sp1-1;                        ! and null (ie straight)
3680 @ 35483:               LINE   609 "regression-compile-tmp/nminimo.imp"
3681 @ 35521:               PUSH   Q
3682 @ 35524:               PUSH   SP1
3683 @ 35527:               PUSHI  #0x00000001
3684 @ 35532:               SUB   
3685 @ 35533:               ASSVAL

   610        v = 0
3686 @ 35534:               LINE   610 "regression-compile-tmp/nminimo.imp"
3687 @ 35572:               PUSH   V
3688 @ 35575:               PUSHI  #0x00000000
3689 @ 35580:               ASSVAL

   611        %cycle
3690 @ 35581:               LINE   611 "regression-compile-tmp/nminimo.imp"
3691 @ 35619:               LOCATE L_000f

   612          v_t = v_t!w(np)_t;  v_f = v_f!w(np)_f
3692 @ 35622:               LINE   612 "regression-compile-tmp/nminimo.imp"
3693 @ 35660:               PUSH   V
3694 @ 35663:               SELECT 1
3695 @ 35666:               PUSH   V
3696 @ 35669:               SELECT 1
3697 @ 35672:               PUSH   W
3698 @ 35675:               PUSH   NP
3699 @ 35678:               ACCESS
3700 @ 35679:               SELECT 1
3701 @ 35682:               OR    
3702 @ 35683:               ASSVAL
3703 @ 35684:               LINE   612 "regression-compile-tmp/nminimo.imp"
3704 @ 35722:               PUSH   V
3705 @ 35725:               SELECT 2
3706 @ 35728:               PUSH   V
3707 @ 35731:               SELECT 2
3708 @ 35734:               PUSH   W
3709 @ 35737:               PUSH   NP
3710 @ 35740:               ACCESS
3711 @ 35741:               SELECT 2
3712 @ 35744:               OR    
3713 @ 35745:               ASSVAL

   613          %if v_t&v_f = 0 %start
3714 @ 35746:               LINE   613 "regression-compile-tmp/nminimo.imp"
3715 @ 35784:               PUSH   V
3716 @ 35787:               SELECT 1
3717 @ 35790:               PUSH   V
3718 @ 35793:               SELECT 2
3719 @ 35796:               AND   
3720 @ 35797:               PUSHI  #0x00000000
3721 @ 35802:               JUMPIF # L_0013

   614            v_outs = v_outs!outbit
3722 @ 35806:               LINE   614 "regression-compile-tmp/nminimo.imp"
3723 @ 35844:               PUSH   V
3724 @ 35847:               SELECT 3
3725 @ 35850:               PUSH   V
3726 @ 35853:               SELECT 3
3727 @ 35856:               PUSH   OUTBIT
3728 @ 35859:               OR    
3729 @ 35860:               ASSVAL

   615            p = sp
3730 @ 35861:               LINE   615 "regression-compile-tmp/nminimo.imp"
3731 @ 35899:               PUSH   P
3732 @ 35902:               PUSH   SP
3733 @ 35905:               ASSVAL

   616            %while p # sp1 %cycle
3734 @ 35906:               LINE   616 "regression-compile-tmp/nminimo.imp"
3735 @ 35944:               LOCATE L_0015
3736 @ 35947:               PUSH   P
3737 @ 35950:               PUSH   SP1
3738 @ 35953:               JUMPIF = L_0016

   617              p = p-1
3739 @ 35957:               LINE   617 "regression-compile-tmp/nminimo.imp"
3740 @ 35995:               PUSH   P
3741 @ 35998:               PUSH   P
3742 @ 36001:               PUSHI  #0x00000001
3743 @ 36006:               SUB   
3744 @ 36007:               ASSVAL

   618              v_outs = v_outs!w(p)_outs %if w(p)_t = v_t %and w(p)_f = v_f
3745 @ 36008:               LINE   618 "regression-compile-tmp/nminimo.imp"
3746 @ 36046:               PUSH   W
3747 @ 36049:               PUSH   P
3748 @ 36052:               ACCESS
3749 @ 36053:               SELECT 1
3750 @ 36056:               PUSH   V
3751 @ 36059:               SELECT 1
3752 @ 36062:               JUMPIF # L_0019
3753 @ 36066:               PUSH   W
3754 @ 36069:               PUSH   P
3755 @ 36072:               ACCESS
3756 @ 36073:               SELECT 2
3757 @ 36076:               PUSH   V
3758 @ 36079:               SELECT 2
3759 @ 36082:               JUMPIF # L_0019
3760 @ 36086:               PUSH   V
3761 @ 36089:               SELECT 3
3762 @ 36092:               PUSH   V
3763 @ 36095:               SELECT 3
3764 @ 36098:               PUSH   W
3765 @ 36101:               PUSH   P
3766 @ 36104:               ACCESS
3767 @ 36105:               SELECT 3
3768 @ 36108:               OR    
3769 @ 36109:               ASSVAL
3770 @ 36110:               LOCATE L_0019

   619              j = w(p)_t!v_t;  k = w(p)_f!v_f
3771 @ 36113:               LINE   619 "regression-compile-tmp/nminimo.imp"
3772 @ 36151:               PUSH   J
3773 @ 36154:               PUSH   W
3774 @ 36157:               PUSH   P
3775 @ 36160:               ACCESS
3776 @ 36161:               SELECT 1
3777 @ 36164:               PUSH   V
3778 @ 36167:               SELECT 1
3779 @ 36170:               OR    
3780 @ 36171:               ASSVAL
3781 @ 36172:               LINE   619 "regression-compile-tmp/nminimo.imp"
3782 @ 36210:               PUSH   K
3783 @ 36213:               PUSH   W
3784 @ 36216:               PUSH   P
3785 @ 36219:               ACCESS
3786 @ 36220:               SELECT 2
3787 @ 36223:               PUSH   V
3788 @ 36226:               SELECT 2
3789 @ 36229:               OR    
3790 @ 36230:               ASSVAL

   620             %exit %if j = v_t %and k = v_f %and w(p)_outs&v_outs = v_outs; !V -> @P
3791 @ 36231:               LINE   620 "regression-compile-tmp/nminimo.imp"
3792 @ 36269:               PUSH   J
3793 @ 36272:               PUSH   V
3794 @ 36275:               SELECT 1
3795 @ 36278:               JUMPIF # L_0019
3796 @ 36282:               PUSH   K
3797 @ 36285:               PUSH   V
3798 @ 36288:               SELECT 2
3799 @ 36291:               JUMPIF # L_0019
3800 @ 36295:               PUSH   W
3801 @ 36298:               PUSH   P
3802 @ 36301:               ACCESS
3803 @ 36302:               SELECT 3
3804 @ 36305:               PUSH   V
3805 @ 36308:               SELECT 3
3806 @ 36311:               AND   
3807 @ 36312:               PUSH   V
3808 @ 36315:               SELECT 3
3809 @ 36318:               JUMPIF # L_0019
3810 @ 36322:               GOTO   L_0016
3811 @ 36325:               LOCATE L_0019

   621   %if j = w(p)_t %and k = w(p)_f %and w(p)_outs&v_outs = w(p)_outs %start
3812 @ 36328:               LINE   621 "regression-compile-tmp/nminimo.imp"
3813 @ 36366:               PUSH   J
3814 @ 36369:               PUSH   W
3815 @ 36372:               PUSH   P
3816 @ 36375:               ACCESS
3817 @ 36376:               SELECT 1
3818 @ 36379:               JUMPIF # L_0019
3819 @ 36383:               PUSH   K
3820 @ 36386:               PUSH   W
3821 @ 36389:               PUSH   P
3822 @ 36392:               ACCESS
3823 @ 36393:               SELECT 2
3824 @ 36396:               JUMPIF # L_0019
3825 @ 36400:               PUSH   W
3826 @ 36403:               PUSH   P
3827 @ 36406:               ACCESS
3828 @ 36407:               SELECT 3
3829 @ 36410:               PUSH   V
3830 @ 36413:               SELECT 3
3831 @ 36416:               AND   
3832 @ 36417:               PUSH   W
3833 @ 36420:               PUSH   P
3834 @ 36423:               ACCESS
3835 @ 36424:               SELECT 3
3836 @ 36427:               JUMPIF # L_0019

   622                oldsp = oldsp-1 %if p < oldsp
3837 @ 36431:               LINE   622 "regression-compile-tmp/nminimo.imp"
3838 @ 36469:               PUSH   P
3839 @ 36472:               PUSH   OLDSP
3840 @ 36475:               JUMPIF >= L_001c
3841 @ 36479:               PUSH   OLDSP
3842 @ 36482:               PUSH   OLDSP
3843 @ 36485:               PUSHI  #0x00000001
3844 @ 36490:               SUB   
3845 @ 36491:               ASSVAL
3846 @ 36492:               LOCATE L_001c

   623                q = q-1 %if p <= q
3847 @ 36495:               LINE   623 "regression-compile-tmp/nminimo.imp"
3848 @ 36533:               PUSH   P
3849 @ 36536:               PUSH   Q
3850 @ 36539:               JUMPIF > L_001c
3851 @ 36543:               PUSH   Q
3852 @ 36546:               PUSH   Q
3853 @ 36549:               PUSHI  #0x00000001
3854 @ 36554:               SUB   
3855 @ 36555:               ASSVAL
3856 @ 36556:               LOCATE L_001c

   624                erase(p)
3857 @ 36559:               LINE   624 "regression-compile-tmp/nminimo.imp"
3858 @ 36597:               PUSH   ERASE
3859 @ 36600:               PUSH   P
3860 @ 36603:               ASSPAR
3861 @ 36604:               CALL  

   625              %finish
3862 @ 36605:               LINE   625 "regression-compile-tmp/nminimo.imp"
3863 @ 36643:               LOCATE L_0019

   626            %repeat
3864 @ 36646:               LINE   626 "regression-compile-tmp/nminimo.imp"
3865 @ 36684:               REPEAT L_0015
3866 @ 36687:               LOCATE L_0016

   627            stack(v) %if p = sp1
3867 @ 36690:               LINE   627 "regression-compile-tmp/nminimo.imp"
3868 @ 36728:               PUSH   P
3869 @ 36731:               PUSH   SP1
3870 @ 36734:               JUMPIF # L_0016
3871 @ 36738:               PUSH   STACK
3872 @ 36741:               PUSH   V
3873 @ 36744:               ASSPAR
3874 @ 36745:               CALL  
3875 @ 36746:               LOCATE L_0016

   628          %finish
3876 @ 36749:               LINE   628 "regression-compile-tmp/nminimo.imp"
3877 @ 36787:               LOCATE L_0013

   629          q = q+1
3878 @ 36790:               LINE   629 "regression-compile-tmp/nminimo.imp"
3879 @ 36828:               PUSH   Q
3880 @ 36831:               PUSH   Q
3881 @ 36834:               PUSHI  #0x00000001
3882 @ 36839:               ADD   
3883 @ 36840:               ASSVAL

   630          %exit %if q = oldsp
3884 @ 36841:               LINE   630 "regression-compile-tmp/nminimo.imp"
3885 @ 36879:               PUSH   Q
3886 @ 36882:               PUSH   OLDSP
3887 @ 36885:               JUMPIF # L_0013
3888 @ 36889:               GOTO   L_0010
3889 @ 36892:               LOCATE L_0013

   631          v = w(q)
3890 @ 36895:               LINE   631 "regression-compile-tmp/nminimo.imp"
3891 @ 36933:               PUSH   V
3892 @ 36936:               PUSH   W
3893 @ 36939:               PUSH   Q
3894 @ 36942:               ACCESS
3895 @ 36943:               ASSVAL

   632        %repeat
3896 @ 36944:               LINE   632 "regression-compile-tmp/nminimo.imp"
3897 @ 36982:               REPEAT L_000f
3898 @ 36985:               LOCATE L_0010

   633        np = np+1
3899 @ 36988:               LINE   633 "regression-compile-tmp/nminimo.imp"
3900 @ 37026:               PUSH   NP
3901 @ 37029:               PUSH   NP
3902 @ 37032:               PUSHI  #0x00000001
3903 @ 37037:               ADD   
3904 @ 37038:               ASSVAL

   634      %repeat
3905 @ 37039:               LINE   634 "regression-compile-tmp/nminimo.imp"
3906 @ 37077:               REPEAT L_000c
3907 @ 37080:               LOCATE L_000d

   635    %finish
3908 @ 37083:               LINE   635 "regression-compile-tmp/nminimo.imp"
3909 @ 37121:               LOCATE L_0009

   636  %finish
3910 @ 37124:               LINE   636 "regression-compile-tmp/nminimo.imp"
3911 @ 37162:               LOCATE L_0007

   637  outbit = outbit<<1
3912 @ 37165:               LINE   637 "regression-compile-tmp/nminimo.imp"
3913 @ 37203:               PUSH   OUTBIT
3914 @ 37206:               PUSH   OUTBIT
3915 @ 37209:               PUSHI  #0x00000001
3916 @ 37214:               LSH   
3917 @ 37215:               ASSVAL

   638  %repeat
3918 @ 37216:               LINE   638 "regression-compile-tmp/nminimo.imp"
3919 @ 37254:               REPEAT L_0003
3920 @ 37257:               LOCATE L_0004

   639  %end; !convert
   640  
3921 @ 37260:               LINE   639 "regression-compile-tmp/nminimo.imp"
3922 @ 37298:            END    _lev0id0_CONVERT {lev=2 --> 1}

   641  %integerfn needed(%integer q,testlim)
3923 @ 37299:            LINE   641 "regression-compile-tmp/nminimo.imp"
3924 @ 37337:            DEF    NEEDED (_lev0id0_NEEDED) p1=V_00bb a/tf=18 b/format=1 c/ostate=10  type=1 (integer) form=8 (function) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=1 unass=0
3925 @ 37355:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
3926 @ 37356:                  DEF    Q p1=V_00bc a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3927 @ 37369:                  DEF    TESTLIM p1=V_00bd a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
3928 @ 37388:               FINISH ) {lev=2}

   642  %integer p
3929 @ 37389:               LINE   642 "regression-compile-tmp/nminimo.imp"
3930 @ 37427:               DEF    P p1=V_00be a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   643  %ownrecord(cell) v,n=0
3931 @ 37440:               LINE   643 "regression-compile-tmp/nminimo.imp"
3932 @ 37478:               DEF    V p1=V_00bf a/tf=41 b/format=a5 c/ostate=21  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
3933 @ 37491:               INIT   1
3934 @ 37494:               PUSHI  #0x00000000
3935 @ 37499:               DEF    N p1=V_00c0 a/tf=41 b/format=a5 c/ostate=21  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=1 (own) spec=0 indirect=0 unass=1
3936 @ 37512:               INIT   1

   644    sp1 = sp;  np1 = np
3937 @ 37515:               LINE   644 "regression-compile-tmp/nminimo.imp"
3938 @ 37553:               PUSH   SP1
3939 @ 37556:               PUSH   SP
3940 @ 37559:               ASSVAL
3941 @ 37560:               LINE   644 "regression-compile-tmp/nminimo.imp"
3942 @ 37598:               PUSH   NP1
3943 @ 37601:               PUSH   NP
3944 @ 37604:               ASSVAL

   645    v = w(q)
3945 @ 37605:               LINE   645 "regression-compile-tmp/nminimo.imp"
3946 @ 37643:               PUSH   V
3947 @ 37646:               PUSH   W
3948 @ 37649:               PUSH   Q
3949 @ 37652:               ACCESS
3950 @ 37653:               ASSVAL

   646    w(sp1)_t = v_t;  w(sp1)_f = v_f
3951 @ 37654:               LINE   646 "regression-compile-tmp/nminimo.imp"
3952 @ 37692:               PUSH   W
3953 @ 37695:               PUSH   SP1
3954 @ 37698:               ACCESS
3955 @ 37699:               SELECT 1
3956 @ 37702:               PUSH   V
3957 @ 37705:               SELECT 1
3958 @ 37708:               ASSVAL
3959 @ 37709:               LINE   646 "regression-compile-tmp/nminimo.imp"
3960 @ 37747:               PUSH   W
3961 @ 37750:               PUSH   SP1
3962 @ 37753:               ACCESS
3963 @ 37754:               SELECT 2
3964 @ 37757:               PUSH   V
3965 @ 37760:               SELECT 2
3966 @ 37763:               ASSVAL

   647    w(sp1)_outs = 0
3967 @ 37764:               LINE   647 "regression-compile-tmp/nminimo.imp"
3968 @ 37802:               PUSH   W
3969 @ 37805:               PUSH   SP1
3970 @ 37808:               ACCESS
3971 @ 37809:               SELECT 3
3972 @ 37812:               PUSHI  #0x00000000
3973 @ 37817:               ASSVAL

   648    sp = sp+1
3974 @ 37818:               LINE   648 "regression-compile-tmp/nminimo.imp"
3975 @ 37856:               PUSH   SP
3976 @ 37859:               PUSH   SP
3977 @ 37862:               PUSHI  #0x00000001
3978 @ 37867:               ADD   
3979 @ 37868:               ASSVAL

   649    p = 1
3980 @ 37869:               LINE   649 "regression-compile-tmp/nminimo.imp"
3981 @ 37907:               PUSH   P
3982 @ 37910:               PUSHI  #0x00000001
3983 @ 37915:               ASSVAL

   650    %while p # testlim %cycle
3984 @ 37916:               LINE   650 "regression-compile-tmp/nminimo.imp"
3985 @ 37954:               LOCATE L_0003
3986 @ 37957:               PUSH   P
3987 @ 37960:               PUSH   TESTLIM
3988 @ 37963:               JUMPIF = L_0004

   651      %if w(p)_flags >= 0 %start
3989 @ 37967:               LINE   651 "regression-compile-tmp/nminimo.imp"
3990 @ 38005:               PUSH   W
3991 @ 38008:               PUSH   P
3992 @ 38011:               ACCESS
3993 @ 38012:               SELECT 4
3994 @ 38015:               PUSHI  #0x00000000
3995 @ 38020:               JUMPIF < L_0007

   652        n_outs = w(p)_outs&v_outs
3996 @ 38024:               LINE   652 "regression-compile-tmp/nminimo.imp"
3997 @ 38062:               PUSH   N
3998 @ 38065:               SELECT 3
3999 @ 38068:               PUSH   W
4000 @ 38071:               PUSH   P
4001 @ 38074:               ACCESS
4002 @ 38075:               SELECT 3
4003 @ 38078:               PUSH   V
4004 @ 38081:               SELECT 3
4005 @ 38084:               AND   
4006 @ 38085:               ASSVAL

   653        %if n_outs # 0 %and p # q %start
4007 @ 38086:               LINE   653 "regression-compile-tmp/nminimo.imp"
4008 @ 38124:               PUSH   N
4009 @ 38127:               SELECT 3
4010 @ 38130:               PUSHI  #0x00000000
4011 @ 38135:               JUMPIF = L_000a
4012 @ 38139:               PUSH   P
4013 @ 38142:               PUSH   Q
4014 @ 38145:               JUMPIF = L_000a

   654          n_t = w(p)_t!v_t;  n_f = w(p)_f!v_f
4015 @ 38149:               LINE   654 "regression-compile-tmp/nminimo.imp"
4016 @ 38187:               PUSH   N
4017 @ 38190:               SELECT 1
4018 @ 38193:               PUSH   W
4019 @ 38196:               PUSH   P
4020 @ 38199:               ACCESS
4021 @ 38200:               SELECT 1
4022 @ 38203:               PUSH   V
4023 @ 38206:               SELECT 1
4024 @ 38209:               OR    
4025 @ 38210:               ASSVAL
4026 @ 38211:               LINE   654 "regression-compile-tmp/nminimo.imp"
4027 @ 38249:               PUSH   N
4028 @ 38252:               SELECT 2
4029 @ 38255:               PUSH   W
4030 @ 38258:               PUSH   P
4031 @ 38261:               ACCESS
4032 @ 38262:               SELECT 2
4033 @ 38265:               PUSH   V
4034 @ 38268:               SELECT 2
4035 @ 38271:               OR    
4036 @ 38272:               ASSVAL

   655          %if n_t&n_f = 0 %start
4037 @ 38273:               LINE   655 "regression-compile-tmp/nminimo.imp"
4038 @ 38311:               PUSH   N
4039 @ 38314:               SELECT 1
4040 @ 38317:               PUSH   N
4041 @ 38320:               SELECT 2
4042 @ 38323:               AND   
4043 @ 38324:               PUSHI  #0x00000000
4044 @ 38329:               JUMPIF # L_000d

   656            np = np-1;  w(np) = n
4045 @ 38333:               LINE   656 "regression-compile-tmp/nminimo.imp"
4046 @ 38371:               PUSH   NP
4047 @ 38374:               PUSH   NP
4048 @ 38377:               PUSHI  #0x00000001
4049 @ 38382:               SUB   
4050 @ 38383:               ASSVAL
4051 @ 38384:               LINE   656 "regression-compile-tmp/nminimo.imp"
4052 @ 38422:               PUSH   W
4053 @ 38425:               PUSH   NP
4054 @ 38428:               ACCESS
4055 @ 38429:               PUSH   N
4056 @ 38432:               ASSVAL

   657            merge
4057 @ 38433:               LINE   657 "regression-compile-tmp/nminimo.imp"
4058 @ 38471:               PUSH   MERGE
4059 @ 38474:               CALL  

   658            %exit %if w(sp1)_outs = v_outs
4060 @ 38475:               LINE   658 "regression-compile-tmp/nminimo.imp"
4061 @ 38513:               PUSH   W
4062 @ 38516:               PUSH   SP1
4063 @ 38519:               ACCESS
4064 @ 38520:               SELECT 3
4065 @ 38523:               PUSH   V
4066 @ 38526:               SELECT 3
4067 @ 38529:               JUMPIF # L_0010
4068 @ 38533:               GOTO   L_0004
4069 @ 38536:               LOCATE L_0010

   659          %finish
4070 @ 38539:               LINE   659 "regression-compile-tmp/nminimo.imp"
4071 @ 38577:               LOCATE L_000d

   660        %finish
4072 @ 38580:               LINE   660 "regression-compile-tmp/nminimo.imp"
4073 @ 38618:               LOCATE L_000a

   661      %finish
4074 @ 38621:               LINE   661 "regression-compile-tmp/nminimo.imp"
4075 @ 38659:               LOCATE L_0007

   662      p = p+1
4076 @ 38662:               LINE   662 "regression-compile-tmp/nminimo.imp"
4077 @ 38700:               PUSH   P
4078 @ 38703:               PUSH   P
4079 @ 38706:               PUSHI  #0x00000001
4080 @ 38711:               ADD   
4081 @ 38712:               ASSVAL

   663    %repeat
4082 @ 38713:               LINE   663 "regression-compile-tmp/nminimo.imp"
4083 @ 38751:               REPEAT L_0003
4084 @ 38754:               LOCATE L_0004

   664    needsp = sp
4085 @ 38757:               LINE   664 "regression-compile-tmp/nminimo.imp"
4086 @ 38795:               PUSH   NEEDSP
4087 @ 38798:               PUSH   SP
4088 @ 38801:               ASSVAL

   665    sp = sp1
4089 @ 38802:               LINE   665 "regression-compile-tmp/nminimo.imp"
4090 @ 38840:               PUSH   SP
4091 @ 38843:               PUSH   SP1
4092 @ 38846:               ASSVAL

   666    %result = p
4093 @ 38847:               LINE   666 "regression-compile-tmp/nminimo.imp"
4094 @ 38885:               PUSH   P
4095 @ 38888:               RESULT

   667  %end
   668  
4096 @ 38889:               LINE   667 "regression-compile-tmp/nminimo.imp"
4097 @ 38927:            END    _lev0id0_NEEDED {lev=2 --> 1}

   669  %routine print all
4098 @ 38928:            LINE   669 "regression-compile-tmp/nminimo.imp"
4099 @ 38966:            DEF    PRINTALL (_lev0id0_PRINTALL) p1=V_00bc a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4100 @ 38986:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4101 @ 38987:               FINISH ) {lev=2}

   670  %integer p,q
4102 @ 38988:               LINE   670 "regression-compile-tmp/nminimo.imp"
4103 @ 39026:               DEF    P p1=V_00bd a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4104 @ 39039:               DEF    Q p1=V_00be a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   671    newlines(2)
4105 @ 39052:               LINE   671 "regression-compile-tmp/nminimo.imp"
4106 @ 39090:               PUSH   NEWLINES
4107 @ 39093:               PUSHI  #0x00000002
4108 @ 39098:               ASSPAR
4109 @ 39099:               CALL  

   672    q = dclim;  q = esslim %if mon&2 # 0
4110 @ 39100:               LINE   672 "regression-compile-tmp/nminimo.imp"
4111 @ 39138:               PUSH   Q
4112 @ 39141:               PUSH   DCLIM
4113 @ 39144:               ASSVAL
4114 @ 39145:               LINE   672 "regression-compile-tmp/nminimo.imp"
4115 @ 39183:               PUSH   MON
4116 @ 39186:               PUSHI  #0x00000002
4117 @ 39191:               AND   
4118 @ 39192:               PUSHI  #0x00000000
4119 @ 39197:               JUMPIF = L_0004
4120 @ 39201:               PUSH   Q
4121 @ 39204:               PUSH   ESSLIM
4122 @ 39207:               ASSVAL
4123 @ 39208:               LOCATE L_0004

   673    %while q # sp %cycle
4124 @ 39211:               LINE   673 "regression-compile-tmp/nminimo.imp"
4125 @ 39249:               LOCATE L_0003
4126 @ 39252:               PUSH   Q
4127 @ 39255:               PUSH   SP
4128 @ 39258:               JUMPIF = L_0004

   674      %if w(q)_flags >= 0 %start
4129 @ 39262:               LINE   674 "regression-compile-tmp/nminimo.imp"
4130 @ 39300:               PUSH   W
4131 @ 39303:               PUSH   Q
4132 @ 39306:               ACCESS
4133 @ 39307:               SELECT 4
4134 @ 39310:               PUSHI  #0x00000000
4135 @ 39315:               JUMPIF < L_0007

   675        p = needed(q,sp)
4136 @ 39319:               LINE   675 "regression-compile-tmp/nminimo.imp"
4137 @ 39357:               PUSH   P
4138 @ 39360:               PUSH   NEEDED
4139 @ 39363:               PUSH   Q
4140 @ 39366:               ASSPAR
4141 @ 39367:               PUSH   SP
4142 @ 39370:               ASSPAR
4143 @ 39371:               CALL  
4144 @ 39372:               ASSVAL

   676        write(q,2) %if mon&4 # 0
4145 @ 39373:               LINE   676 "regression-compile-tmp/nminimo.imp"
4146 @ 39411:               PUSH   MON
4147 @ 39414:               PUSHI  #0x00000004
4148 @ 39419:               AND   
4149 @ 39420:               PUSHI  #0x00000000
4150 @ 39425:               JUMPIF = L_000a
4151 @ 39429:               PUSH   WRITE
4152 @ 39432:               PUSH   Q
4153 @ 39435:               ASSPAR
4154 @ 39436:               PUSHI  #0x00000002
4155 @ 39441:               ASSPAR
4156 @ 39442:               CALL  
4157 @ 39443:               LOCATE L_000a

   677        w(sp1)_outs = w(q)_outs-w(sp1)_outs
4158 @ 39446:               LINE   677 "regression-compile-tmp/nminimo.imp"
4159 @ 39484:               PUSH   W
4160 @ 39487:               PUSH   SP1
4161 @ 39490:               ACCESS
4162 @ 39491:               SELECT 3
4163 @ 39494:               PUSH   W
4164 @ 39497:               PUSH   Q
4165 @ 39500:               ACCESS
4166 @ 39501:               SELECT 3
4167 @ 39504:               PUSH   W
4168 @ 39507:               PUSH   SP1
4169 @ 39510:               ACCESS
4170 @ 39511:               SELECT 3
4171 @ 39514:               SUB   
4172 @ 39515:               ASSVAL

   678        print term(w(sp1),w(q)_outs)
4173 @ 39516:               LINE   678 "regression-compile-tmp/nminimo.imp"
4174 @ 39554:               PUSH   PRINTTERM
4175 @ 39557:               PUSH   W
4176 @ 39560:               PUSH   SP1
4177 @ 39563:               ACCESS
4178 @ 39564:               ASSPAR
4179 @ 39565:               PUSH   W
4180 @ 39568:               PUSH   Q
4181 @ 39571:               ACCESS
4182 @ 39572:               SELECT 3
4183 @ 39575:               ASSPAR
4184 @ 39576:               CALL  

   679      %finish
4185 @ 39577:               LINE   679 "regression-compile-tmp/nminimo.imp"
4186 @ 39615:               LOCATE L_0007

   680      q = q+1
4187 @ 39618:               LINE   680 "regression-compile-tmp/nminimo.imp"
4188 @ 39656:               PUSH   Q
4189 @ 39659:               PUSH   Q
4190 @ 39662:               PUSHI  #0x00000001
4191 @ 39667:               ADD   
4192 @ 39668:               ASSVAL

   681    %repeat
4193 @ 39669:               LINE   681 "regression-compile-tmp/nminimo.imp"
4194 @ 39707:               REPEAT L_0003
4195 @ 39710:               LOCATE L_0004

   682    newline
4196 @ 39713:               LINE   682 "regression-compile-tmp/nminimo.imp"
4197 @ 39751:               PUSH   NEWLINE
4198 @ 39754:               CALL  

   683  %end
   684  
4199 @ 39755:               LINE   683 "regression-compile-tmp/nminimo.imp"
4200 @ 39793:            END    _lev0id0_PRINTALL {lev=2 --> 1}

   685  %routine pcount
4201 @ 39794:            LINE   685 "regression-compile-tmp/nminimo.imp"
4202 @ 39832:            DEF    PCOUNT (_lev0id0_PCOUNT) p1=V_00bd a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4203 @ 39850:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4204 @ 39851:               FINISH ) {lev=2}

   686    write(count>>12,1)
4205 @ 39852:               LINE   686 "regression-compile-tmp/nminimo.imp"
4206 @ 39890:               PUSH   WRITE
4207 @ 39893:               PUSH   COUNT
4208 @ 39896:               PUSHI  #0x0000000c
4209 @ 39901:               RSH   
4210 @ 39902:               ASSPAR
4211 @ 39903:               PUSHI  #0x00000001
4212 @ 39908:               ASSPAR
4213 @ 39909:               CALL  

   687    printsymbol('/')
4214 @ 39910:               LINE   687 "regression-compile-tmp/nminimo.imp"
4215 @ 39948:               PUSH   PRINTSYMBOL
4216 @ 39951:               PUSHI  #0x0000002f
4217 @ 39956:               ASSPAR
4218 @ 39957:               CALL  

   688    out(count&4095)
4219 @ 39958:               LINE   688 "regression-compile-tmp/nminimo.imp"
4220 @ 39996:               PUSH   OUT
4221 @ 39999:               PUSH   COUNT
4222 @ 40002:               PUSHI  #0x00000fff
4223 @ 40007:               AND   
4224 @ 40008:               ASSPAR
4225 @ 40009:               CALL  

   689  %end
   690  
4226 @ 40010:               LINE   689 "regression-compile-tmp/nminimo.imp"
4227 @ 40048:            END    _lev0id0_PCOUNT {lev=2 --> 1}

   691  %routine promote(%integer q,past)
4228 @ 40049:            LINE   691 "regression-compile-tmp/nminimo.imp"
4229 @ 40087:            DEF    PROMOTE (_lev0id0_PROMOTE) p1=V_00be a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4230 @ 40106:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4231 @ 40107:                  DEF    Q p1=V_00bf a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4232 @ 40120:                  DEF    PAST p1=V_00c0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4233 @ 40136:               FINISH ) {lev=2}

   692  %record(cell) v
4234 @ 40137:               LINE   692 "regression-compile-tmp/nminimo.imp"
4235 @ 40175:               DEF    V p1=V_00c1 a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   693    v = w(q)
4236 @ 40188:               LINE   693 "regression-compile-tmp/nminimo.imp"
4237 @ 40226:               PUSH   V
4238 @ 40229:               PUSH   W
4239 @ 40232:               PUSH   Q
4240 @ 40235:               ACCESS
4241 @ 40236:               ASSVAL

   694    %if past = 0 %start
4242 @ 40237:               LINE   694 "regression-compile-tmp/nminimo.imp"
4243 @ 40275:               PUSH   PAST
4244 @ 40278:               PUSHI  #0x00000000
4245 @ 40283:               JUMPIF # L_0004

   695      count = count+bits(v_t!v_f)+4096
4246 @ 40287:               LINE   695 "regression-compile-tmp/nminimo.imp"
4247 @ 40325:               PUSH   COUNT
4248 @ 40328:               PUSH   COUNT
4249 @ 40331:               PUSH   BITS
4250 @ 40334:               PUSH   V
4251 @ 40337:               SELECT 1
4252 @ 40340:               PUSH   V
4253 @ 40343:               SELECT 2
4254 @ 40346:               OR    
4255 @ 40347:               ASSPAR
4256 @ 40348:               CALL  
4257 @ 40349:               ADD   
4258 @ 40350:               PUSHI  #0x00001000
4259 @ 40355:               ADD   
4260 @ 40356:               ASSVAL

   696      past = esslim
4261 @ 40357:               LINE   696 "regression-compile-tmp/nminimo.imp"
4262 @ 40395:               PUSH   PAST
4263 @ 40398:               PUSH   ESSLIM
4264 @ 40401:               ASSVAL

   697      esslim = esslim+1
4265 @ 40402:               LINE   697 "regression-compile-tmp/nminimo.imp"
4266 @ 40440:               PUSH   ESSLIM
4267 @ 40443:               PUSH   ESSLIM
4268 @ 40446:               PUSHI  #0x00000001
4269 @ 40451:               ADD   
4270 @ 40452:               ASSVAL

   698    %finish
4271 @ 40453:               LINE   698 "regression-compile-tmp/nminimo.imp"
4272 @ 40491:               LOCATE L_0004

   699    %while past # esslim %and past # dclim %cycle
4273 @ 40494:               LINE   699 "regression-compile-tmp/nminimo.imp"
4274 @ 40532:               LOCATE L_0003
4275 @ 40535:               PUSH   PAST
4276 @ 40538:               PUSH   ESSLIM
4277 @ 40541:               JUMPIF = L_0004
4278 @ 40545:               PUSH   PAST
4279 @ 40548:               PUSH   DCLIM
4280 @ 40551:               JUMPIF = L_0004

   700      %exit %if w(past-1)_flags <= v_flags
4281 @ 40555:               LINE   700 "regression-compile-tmp/nminimo.imp"
4282 @ 40593:               PUSH   W
4283 @ 40596:               PUSH   PAST
4284 @ 40599:               PUSHI  #0x00000001
4285 @ 40604:               SUB   
4286 @ 40605:               ACCESS
4287 @ 40606:               SELECT 4
4288 @ 40609:               PUSH   V
4289 @ 40612:               SELECT 4
4290 @ 40615:               JUMPIF > L_0007
4291 @ 40619:               GOTO   L_0004
4292 @ 40622:               LOCATE L_0007

   701      past = past-1
4293 @ 40625:               LINE   701 "regression-compile-tmp/nminimo.imp"
4294 @ 40663:               PUSH   PAST
4295 @ 40666:               PUSH   PAST
4296 @ 40669:               PUSHI  #0x00000001
4297 @ 40674:               SUB   
4298 @ 40675:               ASSVAL

   702    %repeat
4299 @ 40676:               LINE   702 "regression-compile-tmp/nminimo.imp"
4300 @ 40714:               REPEAT L_0003
4301 @ 40717:               LOCATE L_0004

   703    %while q # past %cycle
4302 @ 40720:               LINE   703 "regression-compile-tmp/nminimo.imp"
4303 @ 40758:               LOCATE L_0003
4304 @ 40761:               PUSH   Q
4305 @ 40764:               PUSH   PAST
4306 @ 40767:               JUMPIF = L_0004

   704      q = q-1
4307 @ 40771:               LINE   704 "regression-compile-tmp/nminimo.imp"
4308 @ 40809:               PUSH   Q
4309 @ 40812:               PUSH   Q
4310 @ 40815:               PUSHI  #0x00000001
4311 @ 40820:               SUB   
4312 @ 40821:               ASSVAL

   705      w(q+1) = w(q)
4313 @ 40822:               LINE   705 "regression-compile-tmp/nminimo.imp"
4314 @ 40860:               PUSH   W
4315 @ 40863:               PUSH   Q
4316 @ 40866:               PUSHI  #0x00000001
4317 @ 40871:               ADD   
4318 @ 40872:               ACCESS
4319 @ 40873:               PUSH   W
4320 @ 40876:               PUSH   Q
4321 @ 40879:               ACCESS
4322 @ 40880:               ASSVAL

   706    %repeat
4323 @ 40881:               LINE   706 "regression-compile-tmp/nminimo.imp"
4324 @ 40919:               REPEAT L_0003
4325 @ 40922:               LOCATE L_0004

   707    w(q) = v
4326 @ 40925:               LINE   707 "regression-compile-tmp/nminimo.imp"
4327 @ 40963:               PUSH   W
4328 @ 40966:               PUSH   Q
4329 @ 40969:               ACCESS
4330 @ 40970:               PUSH   V
4331 @ 40973:               ASSVAL

   708  %end
   709  
   710  ! R e d u c e   n u m b e r   o f   i m p l i c a n t s
   711  !
4332 @ 40974:               LINE   708 "regression-compile-tmp/nminimo.imp"
4333 @ 41012:            END    _lev0id0_PROMOTE {lev=2 --> 1}

   712  %routine reduce1
   713  ! Find first essentials and redundants
   714  !   order by weight
4334 @ 41013:            LINE   712 "regression-compile-tmp/nminimo.imp"
4335 @ 41051:            DEF    REDUCE1 (_lev0id0_REDUCE1) p1=V_00bf a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4336 @ 41070:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4337 @ 41071:               FINISH ) {lev=2}

   715  %integer p,q
4338 @ 41072:               LINE   715 "regression-compile-tmp/nminimo.imp"
4339 @ 41110:               DEF    P p1=V_00c0 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4340 @ 41123:               DEF    Q p1=V_00c1 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   716    q = dclim;  esslim = q
4341 @ 41136:               LINE   716 "regression-compile-tmp/nminimo.imp"
4342 @ 41174:               PUSH   Q
4343 @ 41177:               PUSH   DCLIM
4344 @ 41180:               ASSVAL
4345 @ 41181:               LINE   716 "regression-compile-tmp/nminimo.imp"
4346 @ 41219:               PUSH   ESSLIM
4347 @ 41222:               PUSH   Q
4348 @ 41225:               ASSVAL

   717    %while q # sp %cycle
4349 @ 41226:               LINE   717 "regression-compile-tmp/nminimo.imp"
4350 @ 41264:               LOCATE L_0003
4351 @ 41267:               PUSH   Q
4352 @ 41270:               PUSH   SP
4353 @ 41273:               JUMPIF = L_0004

   718      w(q)_flags = bits(w(q)_t!w(q)_f)<<5+31-bits(w(q)_outs)
4354 @ 41277:               LINE   718 "regression-compile-tmp/nminimo.imp"
4355 @ 41315:               PUSH   W
4356 @ 41318:               PUSH   Q
4357 @ 41321:               ACCESS
4358 @ 41322:               SELECT 4
4359 @ 41325:               PUSH   BITS
4360 @ 41328:               PUSH   W
4361 @ 41331:               PUSH   Q
4362 @ 41334:               ACCESS
4363 @ 41335:               SELECT 1
4364 @ 41338:               PUSH   W
4365 @ 41341:               PUSH   Q
4366 @ 41344:               ACCESS
4367 @ 41345:               SELECT 2
4368 @ 41348:               OR    
4369 @ 41349:               ASSPAR
4370 @ 41350:               CALL  
4371 @ 41351:               PUSHI  #0x00000005
4372 @ 41356:               LSH   
4373 @ 41357:               PUSHI  #0x0000001f
4374 @ 41362:               ADD   
4375 @ 41363:               PUSH   BITS
4376 @ 41366:               PUSH   W
4377 @ 41369:               PUSH   Q
4378 @ 41372:               ACCESS
4379 @ 41373:               SELECT 3
4380 @ 41376:               ASSPAR
4381 @ 41377:               CALL  
4382 @ 41378:               SUB   
4383 @ 41379:               ASSVAL

   719      p = needed(q,sp)
4384 @ 41380:               LINE   719 "regression-compile-tmp/nminimo.imp"
4385 @ 41418:               PUSH   P
4386 @ 41421:               PUSH   NEEDED
4387 @ 41424:               PUSH   Q
4388 @ 41427:               ASSPAR
4389 @ 41428:               PUSH   SP
4390 @ 41431:               ASSPAR
4391 @ 41432:               CALL  
4392 @ 41433:               ASSVAL

   720      %if p = sp %start;                  !essential
4393 @ 41434:               LINE   720 "regression-compile-tmp/nminimo.imp"
4394 @ 41472:               PUSH   P
4395 @ 41475:               PUSH   SP
4396 @ 41478:               JUMPIF # L_0007

   721        promote(q,0)
4397 @ 41482:               LINE   721 "regression-compile-tmp/nminimo.imp"
4398 @ 41520:               PUSH   PROMOTE
4399 @ 41523:               PUSH   Q
4400 @ 41526:               ASSPAR
4401 @ 41527:               PUSHI  #0x00000000
4402 @ 41532:               ASSPAR
4403 @ 41533:               CALL  

   722      %finish %else %if p >= esslim %start; !optional
4404 @ 41534:               LINE   722 "regression-compile-tmp/nminimo.imp"
4405 @ 41572:               GOTO   L_0006
4406 @ 41575:               LOCATE L_0007
4407 @ 41578:               PUSH   P
4408 @ 41581:               PUSH   ESSLIM
4409 @ 41584:               JUMPIF < L_0007

   723        promote(q,q)
4410 @ 41588:               LINE   723 "regression-compile-tmp/nminimo.imp"
4411 @ 41626:               PUSH   PROMOTE
4412 @ 41629:               PUSH   Q
4413 @ 41632:               ASSPAR
4414 @ 41633:               PUSH   Q
4415 @ 41636:               ASSPAR
4416 @ 41637:               CALL  

   724      %finish %else %start;  !redundant
4417 @ 41638:               LINE   724 "regression-compile-tmp/nminimo.imp"
4418 @ 41676:               GOTO   L_0006
4419 @ 41679:               LOCATE L_0007

   725        erase(q)
4420 @ 41682:               LINE   725 "regression-compile-tmp/nminimo.imp"
4421 @ 41720:               PUSH   ERASE
4422 @ 41723:               PUSH   Q
4423 @ 41726:               ASSPAR
4424 @ 41727:               CALL  

   726        q = q-1
4425 @ 41728:               LINE   726 "regression-compile-tmp/nminimo.imp"
4426 @ 41766:               PUSH   Q
4427 @ 41769:               PUSH   Q
4428 @ 41772:               PUSHI  #0x00000001
4429 @ 41777:               SUB   
4430 @ 41778:               ASSVAL

   727      %finish
4431 @ 41779:               LINE   727 "regression-compile-tmp/nminimo.imp"
4432 @ 41817:               LOCATE L_0006

   728      q = q+1
4433 @ 41820:               LINE   728 "regression-compile-tmp/nminimo.imp"
4434 @ 41858:               PUSH   Q
4435 @ 41861:               PUSH   Q
4436 @ 41864:               PUSHI  #0x00000001
4437 @ 41869:               ADD   
4438 @ 41870:               ASSVAL

   729    %repeat
4439 @ 41871:               LINE   729 "regression-compile-tmp/nminimo.imp"
4440 @ 41909:               REPEAT L_0003
4441 @ 41912:               LOCATE L_0004

   730  %end; !reduce1
   731  
4442 @ 41915:               LINE   730 "regression-compile-tmp/nminimo.imp"
4443 @ 41953:            END    _lev0id0_REDUCE1 {lev=2 --> 1}

   732  %routine reduce2
   733  ! Find secondary essentials & redundants
4444 @ 41954:            LINE   732 "regression-compile-tmp/nminimo.imp"
4445 @ 41992:            DEF    REDUCE2 (_lev0id0_REDUCE2) p1=V_00c0 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4446 @ 42011:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4447 @ 42012:               FINISH ) {lev=2}

   734  %integer p,q,bq,sphold,done
4448 @ 42013:               LINE   734 "regression-compile-tmp/nminimo.imp"
4449 @ 42051:               DEF    P p1=V_00c1 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4450 @ 42064:               DEF    Q p1=V_00c2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4451 @ 42077:               DEF    BQ p1=V_00c3 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4452 @ 42091:               DEF    SPHOLD p1=V_00c4 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4453 @ 42109:               DEF    DONE p1=V_00c5 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   735  %record(cell) v
4454 @ 42125:               LINE   735 "regression-compile-tmp/nminimo.imp"
4455 @ 42163:               DEF    V p1=V_00c6 a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   736  %cycle
4456 @ 42176:               LINE   736 "regression-compile-tmp/nminimo.imp"
4457 @ 42214:               LOCATE L_0003

   737    done = 1
4458 @ 42217:               LINE   737 "regression-compile-tmp/nminimo.imp"
4459 @ 42255:               PUSH   DONE
4460 @ 42258:               PUSHI  #0x00000001
4461 @ 42263:               ASSVAL

   738    q = sp
4462 @ 42264:               LINE   738 "regression-compile-tmp/nminimo.imp"
4463 @ 42302:               PUSH   Q
4464 @ 42305:               PUSH   SP
4465 @ 42308:               ASSVAL

   739    %while q # esslim %cycle
4466 @ 42309:               LINE   739 "regression-compile-tmp/nminimo.imp"
4467 @ 42347:               LOCATE L_0006
4468 @ 42350:               PUSH   Q
4469 @ 42353:               PUSH   ESSLIM
4470 @ 42356:               JUMPIF = L_0007

   740      q = q-1
4471 @ 42360:               LINE   740 "regression-compile-tmp/nminimo.imp"
4472 @ 42398:               PUSH   Q
4473 @ 42401:               PUSH   Q
4474 @ 42404:               PUSHI  #0x00000001
4475 @ 42409:               SUB   
4476 @ 42410:               ASSVAL

   741      p = needed(q,esslim)
4477 @ 42411:               LINE   741 "regression-compile-tmp/nminimo.imp"
4478 @ 42449:               PUSH   P
4479 @ 42452:               PUSH   NEEDED
4480 @ 42455:               PUSH   Q
4481 @ 42458:               ASSPAR
4482 @ 42459:               PUSH   ESSLIM
4483 @ 42462:               ASSPAR
4484 @ 42463:               CALL  
4485 @ 42464:               ASSVAL

   742      %if p = esslim %start;              !not (simply) redundant
4486 @ 42465:               LINE   742 "regression-compile-tmp/nminimo.imp"
4487 @ 42503:               PUSH   P
4488 @ 42506:               PUSH   ESSLIM
4489 @ 42509:               JUMPIF # L_000a

   743        w(q)_outs = w(q)_outs-w(sp1)_outs
4490 @ 42513:               LINE   743 "regression-compile-tmp/nminimo.imp"
4491 @ 42551:               PUSH   W
4492 @ 42554:               PUSH   Q
4493 @ 42557:               ACCESS
4494 @ 42558:               SELECT 3
4495 @ 42561:               PUSH   W
4496 @ 42564:               PUSH   Q
4497 @ 42567:               ACCESS
4498 @ 42568:               SELECT 3
4499 @ 42571:               PUSH   W
4500 @ 42574:               PUSH   SP1
4501 @ 42577:               ACCESS
4502 @ 42578:               SELECT 3
4503 @ 42581:               SUB   
4504 @ 42582:               ASSVAL

   744        w(sp1)_outs = 0
4505 @ 42583:               LINE   744 "regression-compile-tmp/nminimo.imp"
4506 @ 42621:               PUSH   W
4507 @ 42624:               PUSH   SP1
4508 @ 42627:               ACCESS
4509 @ 42628:               SELECT 3
4510 @ 42631:               PUSHI  #0x00000000
4511 @ 42636:               ASSVAL

   745        bq = w(q)_flags>>5
4512 @ 42637:               LINE   745 "regression-compile-tmp/nminimo.imp"
4513 @ 42675:               PUSH   BQ
4514 @ 42678:               PUSH   W
4515 @ 42681:               PUSH   Q
4516 @ 42684:               ACCESS
4517 @ 42685:               SELECT 4
4518 @ 42688:               PUSHI  #0x00000005
4519 @ 42693:               RSH   
4520 @ 42694:               ASSVAL

   746        sphold = sp
4521 @ 42695:               LINE   746 "regression-compile-tmp/nminimo.imp"
4522 @ 42733:               PUSH   SPHOLD
4523 @ 42736:               PUSH   SP
4524 @ 42739:               ASSVAL

   747        %while p # sp %cycle
4525 @ 42740:               LINE   747 "regression-compile-tmp/nminimo.imp"
4526 @ 42778:               LOCATE L_000c
4527 @ 42781:               PUSH   P
4528 @ 42784:               PUSH   SP
4529 @ 42787:               JUMPIF = L_000d

   748          %if w(p)_flags>>5-min < bq %and p # q %start
4530 @ 42791:               LINE   748 "regression-compile-tmp/nminimo.imp"
4531 @ 42829:               PUSH   W
4532 @ 42832:               PUSH   P
4533 @ 42835:               ACCESS
4534 @ 42836:               SELECT 4
4535 @ 42839:               PUSHI  #0x00000005
4536 @ 42844:               RSH   
4537 @ 42845:               PUSH   MIN
4538 @ 42848:               SUB   
4539 @ 42849:               PUSH   BQ
4540 @ 42852:               JUMPIF >= L_0010
4541 @ 42856:               PUSH   P
4542 @ 42859:               PUSH   Q
4543 @ 42862:               JUMPIF = L_0010

   749            v_outs = w(p)_outs&w(q)_outs
4544 @ 42866:               LINE   749 "regression-compile-tmp/nminimo.imp"
4545 @ 42904:               PUSH   V
4546 @ 42907:               SELECT 3
4547 @ 42910:               PUSH   W
4548 @ 42913:               PUSH   P
4549 @ 42916:               ACCESS
4550 @ 42917:               SELECT 3
4551 @ 42920:               PUSH   W
4552 @ 42923:               PUSH   Q
4553 @ 42926:               ACCESS
4554 @ 42927:               SELECT 3
4555 @ 42930:               AND   
4556 @ 42931:               ASSVAL

   750            %if v_outs # 0 %start
4557 @ 42932:               LINE   750 "regression-compile-tmp/nminimo.imp"
4558 @ 42970:               PUSH   V
4559 @ 42973:               SELECT 3
4560 @ 42976:               PUSHI  #0x00000000
4561 @ 42981:               JUMPIF = L_0013

   751              v_t = w(p)_t!w(q)_t;  v_f = w(p)_f!w(q)_f
4562 @ 42985:               LINE   751 "regression-compile-tmp/nminimo.imp"
4563 @ 43023:               PUSH   V
4564 @ 43026:               SELECT 1
4565 @ 43029:               PUSH   W
4566 @ 43032:               PUSH   P
4567 @ 43035:               ACCESS
4568 @ 43036:               SELECT 1
4569 @ 43039:               PUSH   W
4570 @ 43042:               PUSH   Q
4571 @ 43045:               ACCESS
4572 @ 43046:               SELECT 1
4573 @ 43049:               OR    
4574 @ 43050:               ASSVAL
4575 @ 43051:               LINE   751 "regression-compile-tmp/nminimo.imp"
4576 @ 43089:               PUSH   V
4577 @ 43092:               SELECT 2
4578 @ 43095:               PUSH   W
4579 @ 43098:               PUSH   P
4580 @ 43101:               ACCESS
4581 @ 43102:               SELECT 2
4582 @ 43105:               PUSH   W
4583 @ 43108:               PUSH   Q
4584 @ 43111:               ACCESS
4585 @ 43112:               SELECT 2
4586 @ 43115:               OR    
4587 @ 43116:               ASSVAL

   752              %if v_t&v_f = 0 %start
4588 @ 43117:               LINE   752 "regression-compile-tmp/nminimo.imp"
4589 @ 43155:               PUSH   V
4590 @ 43158:               SELECT 1
4591 @ 43161:               PUSH   V
4592 @ 43164:               SELECT 2
4593 @ 43167:               AND   
4594 @ 43168:               PUSHI  #0x00000000
4595 @ 43173:               JUMPIF # L_0016

   753                sp1 = sp;  sp = needsp
4596 @ 43177:               LINE   753 "regression-compile-tmp/nminimo.imp"
4597 @ 43215:               PUSH   SP1
4598 @ 43218:               PUSH   SP
4599 @ 43221:               ASSVAL
4600 @ 43222:               LINE   753 "regression-compile-tmp/nminimo.imp"
4601 @ 43260:               PUSH   SP
4602 @ 43263:               PUSH   NEEDSP
4603 @ 43266:               ASSVAL

   754                %while sp1 # needsp %cycle
4604 @ 43267:               LINE   754 "regression-compile-tmp/nminimo.imp"
4605 @ 43305:               LOCATE L_0018
4606 @ 43308:               PUSH   SP1
4607 @ 43311:               PUSH   NEEDSP
4608 @ 43314:               JUMPIF = L_0019

   755                  w(sp) = w(sp1)
4609 @ 43318:               LINE   755 "regression-compile-tmp/nminimo.imp"
4610 @ 43356:               PUSH   W
4611 @ 43359:               PUSH   SP
4612 @ 43362:               ACCESS
4613 @ 43363:               PUSH   W
4614 @ 43366:               PUSH   SP1
4615 @ 43369:               ACCESS
4616 @ 43370:               ASSVAL

   756                  sp = sp+1;  sp1 = sp1+1
4617 @ 43371:               LINE   756 "regression-compile-tmp/nminimo.imp"
4618 @ 43409:               PUSH   SP
4619 @ 43412:               PUSH   SP
4620 @ 43415:               PUSHI  #0x00000001
4621 @ 43420:               ADD   
4622 @ 43421:               ASSVAL
4623 @ 43422:               LINE   756 "regression-compile-tmp/nminimo.imp"
4624 @ 43460:               PUSH   SP1
4625 @ 43463:               PUSH   SP1
4626 @ 43466:               PUSHI  #0x00000001
4627 @ 43471:               ADD   
4628 @ 43472:               ASSVAL

   757                %repeat
4629 @ 43473:               LINE   757 "regression-compile-tmp/nminimo.imp"
4630 @ 43511:               REPEAT L_0018
4631 @ 43514:               LOCATE L_0019

   758                push(v)
4632 @ 43517:               LINE   758 "regression-compile-tmp/nminimo.imp"
4633 @ 43555:               PUSH   PUSH
4634 @ 43558:               PUSH   V
4635 @ 43561:               ASSPAR
4636 @ 43562:               CALL  

   759                merge
4637 @ 43563:               LINE   759 "regression-compile-tmp/nminimo.imp"
4638 @ 43601:               PUSH   MERGE
4639 @ 43604:               CALL  

   760                sp = sphold
4640 @ 43605:               LINE   760 "regression-compile-tmp/nminimo.imp"
4641 @ 43643:               PUSH   SP
4642 @ 43646:               PUSH   SPHOLD
4643 @ 43649:               ASSVAL

   761                %exit %if w(sp1)_outs = w(q)_outs
4644 @ 43650:               LINE   761 "regression-compile-tmp/nminimo.imp"
4645 @ 43688:               PUSH   W
4646 @ 43691:               PUSH   SP1
4647 @ 43694:               ACCESS
4648 @ 43695:               SELECT 3
4649 @ 43698:               PUSH   W
4650 @ 43701:               PUSH   Q
4651 @ 43704:               ACCESS
4652 @ 43705:               SELECT 3
4653 @ 43708:               JUMPIF # L_0019
4654 @ 43712:               GOTO   L_000d
4655 @ 43715:               LOCATE L_0019

   762              %finish
4656 @ 43718:               LINE   762 "regression-compile-tmp/nminimo.imp"
4657 @ 43756:               LOCATE L_0016

   763            %finish
4658 @ 43759:               LINE   763 "regression-compile-tmp/nminimo.imp"
4659 @ 43797:               LOCATE L_0013

   764          %finish
4660 @ 43800:               LINE   764 "regression-compile-tmp/nminimo.imp"
4661 @ 43838:               LOCATE L_0010

   765          p = p+1
4662 @ 43841:               LINE   765 "regression-compile-tmp/nminimo.imp"
4663 @ 43879:               PUSH   P
4664 @ 43882:               PUSH   P
4665 @ 43885:               PUSHI  #0x00000001
4666 @ 43890:               ADD   
4667 @ 43891:               ASSVAL

   766        %repeat
4668 @ 43892:               LINE   766 "regression-compile-tmp/nminimo.imp"
4669 @ 43930:               REPEAT L_000c
4670 @ 43933:               LOCATE L_000d

   767      %finish
4671 @ 43936:               LINE   767 "regression-compile-tmp/nminimo.imp"
4672 @ 43974:               LOCATE L_000a

   768      %if p # sp %start;                  !redundant
4673 @ 43977:               LINE   768 "regression-compile-tmp/nminimo.imp"
4674 @ 44015:               PUSH   P
4675 @ 44018:               PUSH   SP
4676 @ 44021:               JUMPIF = L_000a

   769        erase(q)
4677 @ 44025:               LINE   769 "regression-compile-tmp/nminimo.imp"
4678 @ 44063:               PUSH   ERASE
4679 @ 44066:               PUSH   Q
4680 @ 44069:               ASSPAR
4681 @ 44070:               CALL  

   770        p = p-1 %if p > q
4682 @ 44071:               LINE   770 "regression-compile-tmp/nminimo.imp"
4683 @ 44109:               PUSH   P
4684 @ 44112:               PUSH   Q
4685 @ 44115:               JUMPIF <= L_000d
4686 @ 44119:               PUSH   P
4687 @ 44122:               PUSH   P
4688 @ 44125:               PUSHI  #0x00000001
4689 @ 44130:               SUB   
4690 @ 44131:               ASSVAL
4691 @ 44132:               LOCATE L_000d

   771        %if p >= esslim %start;           !P may now be essential
4692 @ 44135:               LINE   771 "regression-compile-tmp/nminimo.imp"
4693 @ 44173:               PUSH   P
4694 @ 44176:               PUSH   ESSLIM
4695 @ 44179:               JUMPIF < L_000d

   772          %if needed(p,sp) = sp %start
4696 @ 44183:               LINE   772 "regression-compile-tmp/nminimo.imp"
4697 @ 44221:               PUSH   NEEDED
4698 @ 44224:               PUSH   P
4699 @ 44227:               ASSPAR
4700 @ 44228:               PUSH   SP
4701 @ 44231:               ASSPAR
4702 @ 44232:               CALL  
4703 @ 44233:               PUSH   SP
4704 @ 44236:               JUMPIF # L_0010

   773            q = q+1 %if p >= q
4705 @ 44240:               LINE   773 "regression-compile-tmp/nminimo.imp"
4706 @ 44278:               PUSH   P
4707 @ 44281:               PUSH   Q
4708 @ 44284:               JUMPIF < L_0013
4709 @ 44288:               PUSH   Q
4710 @ 44291:               PUSH   Q
4711 @ 44294:               PUSHI  #0x00000001
4712 @ 44299:               ADD   
4713 @ 44300:               ASSVAL
4714 @ 44301:               LOCATE L_0013

   774            promote(p,0)
4715 @ 44304:               LINE   774 "regression-compile-tmp/nminimo.imp"
4716 @ 44342:               PUSH   PROMOTE
4717 @ 44345:               PUSH   P
4718 @ 44348:               ASSPAR
4719 @ 44349:               PUSHI  #0x00000000
4720 @ 44354:               ASSPAR
4721 @ 44355:               CALL  

   775            done = 0
4722 @ 44356:               LINE   775 "regression-compile-tmp/nminimo.imp"
4723 @ 44394:               PUSH   DONE
4724 @ 44397:               PUSHI  #0x00000000
4725 @ 44402:               ASSVAL

   776          %finish
4726 @ 44403:               LINE   776 "regression-compile-tmp/nminimo.imp"
4727 @ 44441:               LOCATE L_0010

   777        %finish
4728 @ 44444:               LINE   777 "regression-compile-tmp/nminimo.imp"
4729 @ 44482:               LOCATE L_000d

   778      %finish
4730 @ 44485:               LINE   778 "regression-compile-tmp/nminimo.imp"
4731 @ 44523:               LOCATE L_000a

   779    %repeat
4732 @ 44526:               LINE   779 "regression-compile-tmp/nminimo.imp"
4733 @ 44564:               REPEAT L_0006
4734 @ 44567:               LOCATE L_0007

   780  %repeat %until done # 0
4735 @ 44570:               LINE   780 "regression-compile-tmp/nminimo.imp"
4736 @ 44608:               PUSH   DONE
4737 @ 44611:               PUSHI  #0x00000000
4738 @ 44616:               JUMPIF # L_0004
4739 @ 44620:               REPEAT L_0003
4740 @ 44623:               LOCATE L_0004

   781  %end; !reduce2
   782  
4741 @ 44626:               LINE   781 "regression-compile-tmp/nminimo.imp"
4742 @ 44664:            END    _lev0id0_REDUCE2 {lev=2 --> 1}

   783  %routine order
4743 @ 44665:            LINE   783 "regression-compile-tmp/nminimo.imp"
4744 @ 44703:            DEF    ORDER (_lev0id0_ORDER) p1=V_00c1 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4745 @ 44720:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
4746 @ 44721:               FINISH ) {lev=2}

   784  %integer j,k,p,q,r,poss,last
4747 @ 44722:               LINE   784 "regression-compile-tmp/nminimo.imp"
4748 @ 44760:               DEF    J p1=V_00c2 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4749 @ 44773:               DEF    K p1=V_00c3 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4750 @ 44786:               DEF    P p1=V_00c4 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4751 @ 44799:               DEF    Q p1=V_00c5 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4752 @ 44812:               DEF    R p1=V_00c6 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4753 @ 44825:               DEF    POSS p1=V_00c7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4754 @ 44841:               DEF    LAST p1=V_00c8 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   785  %integerarray link(1:sp)
4755 @ 44857:               LINE   785 "regression-compile-tmp/nminimo.imp"
4756 @ 44895:               DEF    LINK p1=V_00c9 a/tf=1b b/format=1 c/ostate=100  type=1 (integer) form=11 (array) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
4757 @ 44911:               PUSHI  #0x00000001
4758 @ 44916:               PUSH   SP
4759 @ 44919:               DIM    0001 0001

   786  %record(cell) v
4760 @ 44925:               LINE   786 "regression-compile-tmp/nminimo.imp"
4761 @ 44963:               DEF    V p1=V_00ca a/tf=41 b/format=a5 c/ostate=0  type=4 (record) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   787    q = sp;  poss = 0;  last = sp
4762 @ 44976:               LINE   787 "regression-compile-tmp/nminimo.imp"
4763 @ 45014:               PUSH   Q
4764 @ 45017:               PUSH   SP
4765 @ 45020:               ASSVAL
4766 @ 45021:               LINE   787 "regression-compile-tmp/nminimo.imp"
4767 @ 45059:               PUSH   POSS
4768 @ 45062:               PUSHI  #0x00000000
4769 @ 45067:               ASSVAL
4770 @ 45068:               LINE   787 "regression-compile-tmp/nminimo.imp"
4771 @ 45106:               PUSH   LAST
4772 @ 45109:               PUSH   SP
4773 @ 45112:               ASSVAL

   788    %while q # esslim %cycle
4774 @ 45113:               LINE   788 "regression-compile-tmp/nminimo.imp"
4775 @ 45151:               LOCATE L_0003
4776 @ 45154:               PUSH   Q
4777 @ 45157:               PUSH   ESSLIM
4778 @ 45160:               JUMPIF = L_0004

   789      q = q-1
4779 @ 45164:               LINE   789 "regression-compile-tmp/nminimo.imp"
4780 @ 45202:               PUSH   Q
4781 @ 45205:               PUSH   Q
4782 @ 45208:               PUSHI  #0x00000001
4783 @ 45213:               SUB   
4784 @ 45214:               ASSVAL

   790      p = needed(q,sp)
4785 @ 45215:               LINE   790 "regression-compile-tmp/nminimo.imp"
4786 @ 45253:               PUSH   P
4787 @ 45256:               PUSH   NEEDED
4788 @ 45259:               PUSH   Q
4789 @ 45262:               ASSPAR
4790 @ 45263:               PUSH   SP
4791 @ 45266:               ASSPAR
4792 @ 45267:               CALL  
4793 @ 45268:               ASSVAL

   791      link(q) = p
4794 @ 45269:               LINE   791 "regression-compile-tmp/nminimo.imp"
4795 @ 45307:               PUSH   LINK
4796 @ 45310:               PUSH   Q
4797 @ 45313:               ACCESS
4798 @ 45314:               PUSH   P
4799 @ 45317:               ASSVAL

   792      %if p > q %and link(p) > p %start
4800 @ 45318:               LINE   792 "regression-compile-tmp/nminimo.imp"
4801 @ 45356:               PUSH   P
4802 @ 45359:               PUSH   Q
4803 @ 45362:               JUMPIF <= L_0007
4804 @ 45366:               PUSH   LINK
4805 @ 45369:               PUSH   P
4806 @ 45372:               ACCESS
4807 @ 45373:               PUSH   P
4808 @ 45376:               JUMPIF <= L_0007

   793        poss = poss+1
4809 @ 45380:               LINE   793 "regression-compile-tmp/nminimo.imp"
4810 @ 45418:               PUSH   POSS
4811 @ 45421:               PUSH   POSS
4812 @ 45424:               PUSHI  #0x00000001
4813 @ 45429:               ADD   
4814 @ 45430:               ASSVAL

   794        poss = poss+99 %if q # last
4815 @ 45431:               LINE   794 "regression-compile-tmp/nminimo.imp"
4816 @ 45469:               PUSH   Q
4817 @ 45472:               PUSH   LAST
4818 @ 45475:               JUMPIF = L_000a
4819 @ 45479:               PUSH   POSS
4820 @ 45482:               PUSH   POSS
4821 @ 45485:               PUSHI  #0x00000063
4822 @ 45490:               ADD   
4823 @ 45491:               ASSVAL
4824 @ 45492:               LOCATE L_000a

   795        v = w(p);  !promote P before Q
4825 @ 45495:               LINE   795 "regression-compile-tmp/nminimo.imp"
4826 @ 45533:               PUSH   V
4827 @ 45536:               PUSH   W
4828 @ 45539:               PUSH   P
4829 @ 45542:               ACCESS
4830 @ 45543:               ASSVAL

   796        r = sp
4831 @ 45544:               LINE   796 "regression-compile-tmp/nminimo.imp"
4832 @ 45582:               PUSH   R
4833 @ 45585:               PUSH   SP
4834 @ 45588:               ASSVAL

   797        %cycle
4835 @ 45589:               LINE   797 "regression-compile-tmp/nminimo.imp"
4836 @ 45627:               LOCATE L_0009

   798          r = r-1
4837 @ 45630:               LINE   798 "regression-compile-tmp/nminimo.imp"
4838 @ 45668:               PUSH   R
4839 @ 45671:               PUSH   R
4840 @ 45674:               PUSHI  #0x00000001
4841 @ 45679:               SUB   
4842 @ 45680:               ASSVAL

   799          j = link(r)
4843 @ 45681:               LINE   799 "regression-compile-tmp/nminimo.imp"
4844 @ 45719:               PUSH   J
4845 @ 45722:               PUSH   LINK
4846 @ 45725:               PUSH   R
4847 @ 45728:               ACCESS
4848 @ 45729:               ASSVAL

   800          %if j = p %then j = q %else %if q <= j < p %then j = j+1
4849 @ 45730:               LINE   800 "regression-compile-tmp/nminimo.imp"
4850 @ 45768:               PUSH   J
4851 @ 45771:               PUSH   P
4852 @ 45774:               JUMPIF # L_000d
4853 @ 45778:               PUSH   J
4854 @ 45781:               PUSH   Q
4855 @ 45784:               ASSVAL
4856 @ 45785:               GOTO   L_000c
4857 @ 45788:               LOCATE L_000d
4858 @ 45791:               PUSH   Q
4859 @ 45794:               PUSH   J
4860 @ 45797:               JUMPIFD > L_000d
4861 @ 45801:               PUSH   P
4862 @ 45804:               JUMPIF >= L_000d
4863 @ 45808:               PUSH   J
4864 @ 45811:               PUSH   J
4865 @ 45814:               PUSHI  #0x00000001
4866 @ 45819:               ADD   
4867 @ 45820:               ASSVAL
4868 @ 45821:               LOCATE L_000d
4869 @ 45824:               LOCATE L_000c

   801          %if r >= p %then %start
4870 @ 45827:               LINE   801 "regression-compile-tmp/nminimo.imp"
4871 @ 45865:               PUSH   R
4872 @ 45868:               PUSH   P
4873 @ 45871:               JUMPIF < L_000d

   802            link(r) = j
4874 @ 45875:               LINE   802 "regression-compile-tmp/nminimo.imp"
4875 @ 45913:               PUSH   LINK
4876 @ 45916:               PUSH   R
4877 @ 45919:               ACCESS
4878 @ 45920:               PUSH   J
4879 @ 45923:               ASSVAL

   803          %finish %else %start
4880 @ 45924:               LINE   803 "regression-compile-tmp/nminimo.imp"
4881 @ 45962:               GOTO   L_000c
4882 @ 45965:               LOCATE L_000d

   804            link(r+1) = j
4883 @ 45968:               LINE   804 "regression-compile-tmp/nminimo.imp"
4884 @ 46006:               PUSH   LINK
4885 @ 46009:               PUSH   R
4886 @ 46012:               PUSHI  #0x00000001
4887 @ 46017:               ADD   
4888 @ 46018:               ACCESS
4889 @ 46019:               PUSH   J
4890 @ 46022:               ASSVAL

   805            w(r+1) = w(r)
4891 @ 46023:               LINE   805 "regression-compile-tmp/nminimo.imp"
4892 @ 46061:               PUSH   W
4893 @ 46064:               PUSH   R
4894 @ 46067:               PUSHI  #0x00000001
4895 @ 46072:               ADD   
4896 @ 46073:               ACCESS
4897 @ 46074:               PUSH   W
4898 @ 46077:               PUSH   R
4899 @ 46080:               ACCESS
4900 @ 46081:               ASSVAL

   806          %finish
4901 @ 46082:               LINE   806 "regression-compile-tmp/nminimo.imp"
4902 @ 46120:               LOCATE L_000c

   807        %repeat %until r = q
4903 @ 46123:               LINE   807 "regression-compile-tmp/nminimo.imp"
4904 @ 46161:               PUSH   R
4905 @ 46164:               PUSH   Q
4906 @ 46167:               JUMPIF = L_000a
4907 @ 46171:               REPEAT L_0009
4908 @ 46174:               LOCATE L_000a

   808        w(r) = v
4909 @ 46177:               LINE   808 "regression-compile-tmp/nminimo.imp"
4910 @ 46215:               PUSH   W
4911 @ 46218:               PUSH   R
4912 @ 46221:               ACCESS
4913 @ 46222:               PUSH   V
4914 @ 46225:               ASSVAL

   809        q = q+2;  last = q-1;  !try Q again
4915 @ 46226:               LINE   809 "regression-compile-tmp/nminimo.imp"
4916 @ 46264:               PUSH   Q
4917 @ 46267:               PUSH   Q
4918 @ 46270:               PUSHI  #0x00000002
4919 @ 46275:               ADD   
4920 @ 46276:               ASSVAL
4921 @ 46277:               LINE   809 "regression-compile-tmp/nminimo.imp"
4922 @ 46315:               PUSH   LAST
4923 @ 46318:               PUSH   Q
4924 @ 46321:               PUSHI  #0x00000001
4925 @ 46326:               SUB   
4926 @ 46327:               ASSVAL

   810      %finish
4927 @ 46328:               LINE   810 "regression-compile-tmp/nminimo.imp"
4928 @ 46366:               LOCATE L_0007

   811    %repeat
4929 @ 46369:               LINE   811 "regression-compile-tmp/nminimo.imp"
4930 @ 46407:               REPEAT L_0003
4931 @ 46410:               LOCATE L_0004

   812    write(poss,1)
   813  !First pass
4932 @ 46413:               LINE   812 "regression-compile-tmp/nminimo.imp"
4933 @ 46451:               PUSH   WRITE
4934 @ 46454:               PUSH   POSS
4935 @ 46457:               ASSPAR
4936 @ 46458:               PUSHI  #0x00000001
4937 @ 46463:               ASSPAR
4938 @ 46464:               CALL  

   814    %cycle
4939 @ 46465:               LINE   814 "regression-compile-tmp/nminimo.imp"
4940 @ 46503:               LOCATE L_0003

   815      v = w(q)
4941 @ 46506:               LINE   815 "regression-compile-tmp/nminimo.imp"
4942 @ 46544:               PUSH   V
4943 @ 46547:               PUSH   W
4944 @ 46550:               PUSH   Q
4945 @ 46553:               ACCESS
4946 @ 46554:               ASSVAL

   816      v_flags = v_flags>>5
4947 @ 46555:               LINE   816 "regression-compile-tmp/nminimo.imp"
4948 @ 46593:               PUSH   V
4949 @ 46596:               SELECT 4
4950 @ 46599:               PUSH   V
4951 @ 46602:               SELECT 4
4952 @ 46605:               PUSHI  #0x00000005
4953 @ 46610:               RSH   
4954 @ 46611:               ASSVAL

   817      p = needed(q,sp)
4955 @ 46612:               LINE   817 "regression-compile-tmp/nminimo.imp"
4956 @ 46650:               PUSH   P
4957 @ 46653:               PUSH   NEEDED
4958 @ 46656:               PUSH   Q
4959 @ 46659:               ASSPAR
4960 @ 46660:               PUSH   SP
4961 @ 46663:               ASSPAR
4962 @ 46664:               CALL  
4963 @ 46665:               ASSVAL

   818      %if p > q %start
4964 @ 46666:               LINE   818 "regression-compile-tmp/nminimo.imp"
4965 @ 46704:               PUSH   P
4966 @ 46707:               PUSH   Q
4967 @ 46710:               JUMPIF <= L_0007

   819        count = count+v_flags+4096
4968 @ 46714:               LINE   819 "regression-compile-tmp/nminimo.imp"
4969 @ 46752:               PUSH   COUNT
4970 @ 46755:               PUSH   COUNT
4971 @ 46758:               PUSH   V
4972 @ 46761:               SELECT 4
4973 @ 46764:               ADD   
4974 @ 46765:               PUSHI  #0x00001000
4975 @ 46770:               ADD   
4976 @ 46771:               ASSVAL

   820        w(q)_flags = v_flags+count<<5
4977 @ 46772:               LINE   820 "regression-compile-tmp/nminimo.imp"
4978 @ 46810:               PUSH   W
4979 @ 46813:               PUSH   Q
4980 @ 46816:               ACCESS
4981 @ 46817:               SELECT 4
4982 @ 46820:               PUSH   V
4983 @ 46823:               SELECT 4
4984 @ 46826:               PUSH   COUNT
4985 @ 46829:               PUSHI  #0x00000005
4986 @ 46834:               LSH   
4987 @ 46835:               ADD   
4988 @ 46836:               ASSVAL

   821      %finish %else %start
4989 @ 46837:               LINE   821 "regression-compile-tmp/nminimo.imp"
4990 @ 46875:               GOTO   L_0006
4991 @ 46878:               LOCATE L_0007

   822        %cycle
4992 @ 46881:               LINE   822 "regression-compile-tmp/nminimo.imp"
4993 @ 46919:               LOCATE L_0009

   823          p = p+1
4994 @ 46922:               LINE   823 "regression-compile-tmp/nminimo.imp"
4995 @ 46960:               PUSH   P
4996 @ 46963:               PUSH   P
4997 @ 46966:               PUSHI  #0x00000001
4998 @ 46971:               ADD   
4999 @ 46972:               ASSVAL

   824        %repeat %until w(p)_flags >= 0
5000 @ 46973:               LINE   824 "regression-compile-tmp/nminimo.imp"
5001 @ 47011:               PUSH   W
5002 @ 47014:               PUSH   P
5003 @ 47017:               ACCESS
5004 @ 47018:               SELECT 4
5005 @ 47021:               PUSHI  #0x00000000
5006 @ 47026:               JUMPIF >= L_000a
5007 @ 47030:               REPEAT L_0009
5008 @ 47033:               LOCATE L_000a

   825        r = q
5009 @ 47036:               LINE   825 "regression-compile-tmp/nminimo.imp"
5010 @ 47074:               PUSH   R
5011 @ 47077:               PUSH   Q
5012 @ 47080:               ASSVAL

   826        %while r # p %cycle
5013 @ 47081:               LINE   826 "regression-compile-tmp/nminimo.imp"
5014 @ 47119:               LOCATE L_0009
5015 @ 47122:               PUSH   R
5016 @ 47125:               PUSH   P
5017 @ 47128:               JUMPIF = L_000a

   827          r = r-1
5018 @ 47132:               LINE   827 "regression-compile-tmp/nminimo.imp"
5019 @ 47170:               PUSH   R
5020 @ 47173:               PUSH   R
5021 @ 47176:               PUSHI  #0x00000001
5022 @ 47181:               SUB   
5023 @ 47182:               ASSVAL

   828          w(r+1) = w(r)
5024 @ 47183:               LINE   828 "regression-compile-tmp/nminimo.imp"
5025 @ 47221:               PUSH   W
5026 @ 47224:               PUSH   R
5027 @ 47227:               PUSHI  #0x00000001
5028 @ 47232:               ADD   
5029 @ 47233:               ACCESS
5030 @ 47234:               PUSH   W
5031 @ 47237:               PUSH   R
5032 @ 47240:               ACCESS
5033 @ 47241:               ASSVAL

   829        %repeat
5034 @ 47242:               LINE   829 "regression-compile-tmp/nminimo.imp"
5035 @ 47280:               REPEAT L_0009
5036 @ 47283:               LOCATE L_000a

   830        v_flags = w(r-1)_flags&16_0FFFFFE0+v_flags+sign
5037 @ 47286:               LINE   830 "regression-compile-tmp/nminimo.imp"
5038 @ 47324:               PUSH   V
5039 @ 47327:               SELECT 4
5040 @ 47330:               PUSH   W
5041 @ 47333:               PUSH   R
5042 @ 47336:               PUSHI  #0x00000001
5043 @ 47341:               SUB   
5044 @ 47342:               ACCESS
5045 @ 47343:               SELECT 4
5046 @ 47346:               PUSHI  #0x0fffffe0
5047 @ 47351:               AND   
5048 @ 47352:               PUSH   V
5049 @ 47355:               SELECT 4
5050 @ 47358:               ADD   
5051 @ 47359:               PUSHI  #0x80000000
5052 @ 47364:               ADD   
5053 @ 47365:               ASSVAL

   831        w(r) = v
5054 @ 47366:               LINE   831 "regression-compile-tmp/nminimo.imp"
5055 @ 47404:               PUSH   W
5056 @ 47407:               PUSH   R
5057 @ 47410:               ACCESS
5058 @ 47411:               PUSH   V
5059 @ 47414:               ASSVAL

   832      %finish
5060 @ 47415:               LINE   832 "regression-compile-tmp/nminimo.imp"
5061 @ 47453:               LOCATE L_0006

   833      q = q+1
5062 @ 47456:               LINE   833 "regression-compile-tmp/nminimo.imp"
5063 @ 47494:               PUSH   Q
5064 @ 47497:               PUSH   Q
5065 @ 47500:               PUSHI  #0x00000001
5066 @ 47505:               ADD   
5067 @ 47506:               ASSVAL

   834    %repeat %until q = sp
5068 @ 47507:               LINE   834 "regression-compile-tmp/nminimo.imp"
5069 @ 47545:               PUSH   Q
5070 @ 47548:               PUSH   SP
5071 @ 47551:               JUMPIF = L_0004
5072 @ 47555:               REPEAT L_0003
5073 @ 47558:               LOCATE L_0004

   835  %end; !order
   836  
   837  ! F i n d   m i n i m a l   s e l e c t i o n
   838  !
5074 @ 47561:               LINE   835 "regression-compile-tmp/nminimo.imp"
5075 @ 47599:            END    _lev0id0_ORDER {lev=2 --> 1}

   839  %routine minimise
   840  ! Find minimal selection
5076 @ 47600:            LINE   839 "regression-compile-tmp/nminimo.imp"
5077 @ 47638:            DEF    MINIMISE (_lev0id0_MINIMISE) p1=V_00c2 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5078 @ 47658:               START  ( FORMAL PARAMETERS  {lev=2 --> 3, nested=0 --> 1}
5079 @ 47659:               FINISH ) {lev=2}

   841  %integer k,p,q,m
5080 @ 47660:               LINE   841 "regression-compile-tmp/nminimo.imp"
5081 @ 47698:               DEF    K p1=V_00c3 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5082 @ 47711:               DEF    P p1=V_00c4 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5083 @ 47724:               DEF    Q p1=V_00c5 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5084 @ 47737:               DEF    M p1=V_00c6 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0

   842    q = sp
5085 @ 47750:               LINE   842 "regression-compile-tmp/nminimo.imp"
5086 @ 47788:               PUSH   Q
5087 @ 47791:               PUSH   SP
5088 @ 47794:               ASSVAL

   843    %cycle
5089 @ 47795:               LINE   843 "regression-compile-tmp/nminimo.imp"
5090 @ 47833:               LOCATE L_0003

   844      %while q # sp %cycle
5091 @ 47836:               LINE   844 "regression-compile-tmp/nminimo.imp"
5092 @ 47874:               LOCATE L_0006
5093 @ 47877:               PUSH   Q
5094 @ 47880:               PUSH   SP
5095 @ 47883:               JUMPIF = L_0007

   845        m = w(q)_flags
5096 @ 47887:               LINE   845 "regression-compile-tmp/nminimo.imp"
5097 @ 47925:               PUSH   M
5098 @ 47928:               PUSH   W
5099 @ 47931:               PUSH   Q
5100 @ 47934:               ACCESS
5101 @ 47935:               SELECT 4
5102 @ 47938:               ASSVAL

   846        p = needed(q,sp)
5103 @ 47939:               LINE   846 "regression-compile-tmp/nminimo.imp"
5104 @ 47977:               PUSH   P
5105 @ 47980:               PUSH   NEEDED
5106 @ 47983:               PUSH   Q
5107 @ 47986:               ASSPAR
5108 @ 47987:               PUSH   SP
5109 @ 47990:               ASSPAR
5110 @ 47991:               CALL  
5111 @ 47992:               ASSVAL

   847        %if p = sp %start;                !mandatory
5112 @ 47993:               LINE   847 "regression-compile-tmp/nminimo.imp"
5113 @ 48031:               PUSH   P
5114 @ 48034:               PUSH   SP
5115 @ 48037:               JUMPIF # L_000a

   848          m = m+forced
5116 @ 48041:               LINE   848 "regression-compile-tmp/nminimo.imp"
5117 @ 48079:               PUSH   M
5118 @ 48082:               PUSH   M
5119 @ 48085:               PUSHI  #0x40000000
5120 @ 48090:               ADD   
5121 @ 48091:               ASSVAL

   849        %finish %else %start;             !optional or redundant
5122 @ 48092:               LINE   849 "regression-compile-tmp/nminimo.imp"
5123 @ 48130:               GOTO   L_0009
5124 @ 48133:               LOCATE L_000a

   850          m = m+(sign+forced) %if p < q;  !redundant
5125 @ 48136:               LINE   850 "regression-compile-tmp/nminimo.imp"
5126 @ 48174:               PUSH   P
5127 @ 48177:               PUSH   Q
5128 @ 48180:               JUMPIF >= L_000d
5129 @ 48184:               PUSH   M
5130 @ 48187:               PUSH   M
5131 @ 48190:               PUSHI  #0x80000000
5132 @ 48195:               PUSHI  #0x40000000
5133 @ 48200:               ADD   
5134 @ 48201:               ADD   
5135 @ 48202:               ASSVAL
5136 @ 48203:               LOCATE L_000d

   851        %finish
5137 @ 48206:               LINE   851 "regression-compile-tmp/nminimo.imp"
5138 @ 48244:               LOCATE L_0009

   852        %if m >= 0 %start;            !selected
5139 @ 48247:               LINE   852 "regression-compile-tmp/nminimo.imp"
5140 @ 48285:               PUSH   M
5141 @ 48288:               PUSHI  #0x00000000
5142 @ 48293:               JUMPIF < L_000a

   853          k = m&31+count+4096
5143 @ 48297:               LINE   853 "regression-compile-tmp/nminimo.imp"
5144 @ 48335:               PUSH   K
5145 @ 48338:               PUSH   M
5146 @ 48341:               PUSHI  #0x0000001f
5147 @ 48346:               AND   
5148 @ 48347:               PUSH   COUNT
5149 @ 48350:               ADD   
5150 @ 48351:               PUSHI  #0x00001000
5151 @ 48356:               ADD   
5152 @ 48357:               ASSVAL

   854          %exit %if k+inc > aim
5153 @ 48358:               LINE   854 "regression-compile-tmp/nminimo.imp"
5154 @ 48396:               PUSH   K
5155 @ 48399:               PUSH   INC
5156 @ 48402:               ADD   
5157 @ 48403:               PUSH   AIM
5158 @ 48406:               JUMPIF <= L_000d
5159 @ 48410:               GOTO   L_0007
5160 @ 48413:               LOCATE L_000d

   855          %exit %if k+inc > m>>5&16_7FFFFF
5161 @ 48416:               LINE   855 "regression-compile-tmp/nminimo.imp"
5162 @ 48454:               PUSH   K
5163 @ 48457:               PUSH   INC
5164 @ 48460:               ADD   
5165 @ 48461:               PUSH   M
5166 @ 48464:               PUSHI  #0x00000005
5167 @ 48469:               RSH   
5168 @ 48470:               PUSHI  #0x007fffff
5169 @ 48475:               AND   
5170 @ 48476:               JUMPIF <= L_000d
5171 @ 48480:               GOTO   L_0007
5172 @ 48483:               LOCATE L_000d

   856          count = k
5173 @ 48486:               LINE   856 "regression-compile-tmp/nminimo.imp"
5174 @ 48524:               PUSH   COUNT
5175 @ 48527:               PUSH   K
5176 @ 48530:               ASSVAL

   857        %finish
5177 @ 48531:               LINE   857 "regression-compile-tmp/nminimo.imp"
5178 @ 48569:               LOCATE L_000a

   858        w(q)_flags = m
5179 @ 48572:               LINE   858 "regression-compile-tmp/nminimo.imp"
5180 @ 48610:               PUSH   W
5181 @ 48613:               PUSH   Q
5182 @ 48616:               ACCESS
5183 @ 48617:               SELECT 4
5184 @ 48620:               PUSH   M
5185 @ 48623:               ASSVAL

   859        q = q+1
5186 @ 48624:               LINE   859 "regression-compile-tmp/nminimo.imp"
5187 @ 48662:               PUSH   Q
5188 @ 48665:               PUSH   Q
5189 @ 48668:               PUSHI  #0x00000001
5190 @ 48673:               ADD   
5191 @ 48674:               ASSVAL

   860      %repeat
5192 @ 48675:               LINE   860 "regression-compile-tmp/nminimo.imp"
5193 @ 48713:               REPEAT L_0006
5194 @ 48716:               LOCATE L_0007

   861      %if q = sp %start;                  !scan completed successfully
5195 @ 48719:               LINE   861 "regression-compile-tmp/nminimo.imp"
5196 @ 48757:               PUSH   Q
5197 @ 48760:               PUSH   SP
5198 @ 48763:               JUMPIF # L_0007

   862        pcount
5199 @ 48767:               LINE   862 "regression-compile-tmp/nminimo.imp"
5200 @ 48805:               PUSH   PCOUNT
5201 @ 48808:               CALL  

   863        printall %if inc = 0 %or mon&1 # 0
5202 @ 48809:               LINE   863 "regression-compile-tmp/nminimo.imp"
5203 @ 48847:               PUSH   INC
5204 @ 48850:               PUSHI  #0x00000000
5205 @ 48855:               JUMPIF = L_000b
5206 @ 48859:               PUSH   MON
5207 @ 48862:               PUSHI  #0x00000001
5208 @ 48867:               AND   
5209 @ 48868:               PUSHI  #0x00000000
5210 @ 48873:               JUMPIF = L_000a
5211 @ 48877:               LOCATE L_000b
5212 @ 48880:               PUSH   PRINTALL
5213 @ 48883:               CALL  
5214 @ 48884:               LOCATE L_000a

   864        aim = count
5215 @ 48887:               LINE   864 "regression-compile-tmp/nminimo.imp"
5216 @ 48925:               PUSH   AIM
5217 @ 48928:               PUSH   COUNT
5218 @ 48931:               ASSVAL

   865        q = esslim
5219 @ 48932:               LINE   865 "regression-compile-tmp/nminimo.imp"
5220 @ 48970:               PUSH   Q
5221 @ 48973:               PUSH   ESSLIM
5222 @ 48976:               ASSVAL

   866        %while q # sp %cycle;             !save marker bits
5223 @ 48977:               LINE   866 "regression-compile-tmp/nminimo.imp"
5224 @ 49015:               LOCATE L_0009
5225 @ 49018:               PUSH   Q
5226 @ 49021:               PUSH   SP
5227 @ 49024:               JUMPIF = L_000a

   867          k = w(q)_flags&16_cfffffff
5228 @ 49028:               LINE   867 "regression-compile-tmp/nminimo.imp"
5229 @ 49066:               PUSH   K
5230 @ 49069:               PUSH   W
5231 @ 49072:               PUSH   Q
5232 @ 49075:               ACCESS
5233 @ 49076:               SELECT 4
5234 @ 49079:               PUSHI  #0xcfffffff
5235 @ 49084:               AND   
5236 @ 49085:               ASSVAL

   868          w(q)_flags = (k&16_c0000000)>>2+k
5237 @ 49086:               LINE   868 "regression-compile-tmp/nminimo.imp"
5238 @ 49124:               PUSH   W
5239 @ 49127:               PUSH   Q
5240 @ 49130:               ACCESS
5241 @ 49131:               SELECT 4
5242 @ 49134:               PUSH   K
5243 @ 49137:               PUSHI  #0xc0000000
5244 @ 49142:               AND   
5245 @ 49143:               PUSHI  #0x00000002
5246 @ 49148:               RSH   
5247 @ 49149:               PUSH   K
5248 @ 49152:               ADD   
5249 @ 49153:               ASSVAL

   869          q = q+1
5250 @ 49154:               LINE   869 "regression-compile-tmp/nminimo.imp"
5251 @ 49192:               PUSH   Q
5252 @ 49195:               PUSH   Q
5253 @ 49198:               PUSHI  #0x00000001
5254 @ 49203:               ADD   
5255 @ 49204:               ASSVAL

   870        %repeat
5256 @ 49205:               LINE   870 "regression-compile-tmp/nminimo.imp"
5257 @ 49243:               REPEAT L_0009
5258 @ 49246:               LOCATE L_000a

   871      %finish
5259 @ 49249:               LINE   871 "regression-compile-tmp/nminimo.imp"
5260 @ 49287:               LOCATE L_0007

   872      %cycle;                             !scan backward to de-select
5261 @ 49290:               LINE   872 "regression-compile-tmp/nminimo.imp"
5262 @ 49328:               LOCATE L_0006

   873        %if q = esslim %start;            !scan completed
5263 @ 49331:               LINE   873 "regression-compile-tmp/nminimo.imp"
5264 @ 49369:               PUSH   Q
5265 @ 49372:               PUSH   ESSLIM
5266 @ 49375:               JUMPIF # L_000a

   874          %while q # sp %cycle;           !restore marker bits
5267 @ 49379:               LINE   874 "regression-compile-tmp/nminimo.imp"
5268 @ 49417:               LOCATE L_000c
5269 @ 49420:               PUSH   Q
5270 @ 49423:               PUSH   SP
5271 @ 49426:               JUMPIF = L_000d

   875            k = w(q)_flags&16_3fffffff
5272 @ 49430:               LINE   875 "regression-compile-tmp/nminimo.imp"
5273 @ 49468:               PUSH   K
5274 @ 49471:               PUSH   W
5275 @ 49474:               PUSH   Q
5276 @ 49477:               ACCESS
5277 @ 49478:               SELECT 4
5278 @ 49481:               PUSHI  #0x3fffffff
5279 @ 49486:               AND   
5280 @ 49487:               ASSVAL

   876            w(q)_flags = (k&16_30000000)<<2+k
5281 @ 49488:               LINE   876 "regression-compile-tmp/nminimo.imp"
5282 @ 49526:               PUSH   W
5283 @ 49529:               PUSH   Q
5284 @ 49532:               ACCESS
5285 @ 49533:               SELECT 4
5286 @ 49536:               PUSH   K
5287 @ 49539:               PUSHI  #0x30000000
5288 @ 49544:               AND   
5289 @ 49545:               PUSHI  #0x00000002
5290 @ 49550:               LSH   
5291 @ 49551:               PUSH   K
5292 @ 49554:               ADD   
5293 @ 49555:               ASSVAL

   877            q = q+1
5294 @ 49556:               LINE   877 "regression-compile-tmp/nminimo.imp"
5295 @ 49594:               PUSH   Q
5296 @ 49597:               PUSH   Q
5297 @ 49600:               PUSHI  #0x00000001
5298 @ 49605:               ADD   
5299 @ 49606:               ASSVAL

   878          %repeat
5300 @ 49607:               LINE   878 "regression-compile-tmp/nminimo.imp"
5301 @ 49645:               REPEAT L_000c
5302 @ 49648:               LOCATE L_000d

   879          %return %if inc <= min;         !all done
5303 @ 49651:               LINE   879 "regression-compile-tmp/nminimo.imp"
5304 @ 49689:               PUSH   INC
5305 @ 49692:               PUSH   MIN
5306 @ 49695:               JUMPIF > L_000d
5307 @ 49699:               RETURN
5308 @ 49700:               LOCATE L_000d

   880          count = aim;                    !restore count
5309 @ 49703:               LINE   880 "regression-compile-tmp/nminimo.imp"
5310 @ 49741:               PUSH   COUNT
5311 @ 49744:               PUSH   AIM
5312 @ 49747:               ASSVAL

   881          inc = inc>>1
5313 @ 49748:               LINE   881 "regression-compile-tmp/nminimo.imp"
5314 @ 49786:               PUSH   INC
5315 @ 49789:               PUSH   INC
5316 @ 49792:               PUSHI  #0x00000001
5317 @ 49797:               RSH   
5318 @ 49798:               ASSVAL

   882          print all %if inc = 0
5319 @ 49799:               LINE   882 "regression-compile-tmp/nminimo.imp"
5320 @ 49837:               PUSH   INC
5321 @ 49840:               PUSHI  #0x00000000
5322 @ 49845:               JUMPIF # L_000d
5323 @ 49849:               PUSH   PRINTALL
5324 @ 49852:               CALL  
5325 @ 49853:               LOCATE L_000d

   883        %finish
5326 @ 49856:               LINE   883 "regression-compile-tmp/nminimo.imp"
5327 @ 49894:               LOCATE L_000a

   884        q = q-1
5328 @ 49897:               LINE   884 "regression-compile-tmp/nminimo.imp"
5329 @ 49935:               PUSH   Q
5330 @ 49938:               PUSH   Q
5331 @ 49941:               PUSHI  #0x00000001
5332 @ 49946:               SUB   
5333 @ 49947:               ASSVAL

   885        m = w(q)_flags
5334 @ 49948:               LINE   885 "regression-compile-tmp/nminimo.imp"
5335 @ 49986:               PUSH   M
5336 @ 49989:               PUSH   W
5337 @ 49992:               PUSH   Q
5338 @ 49995:               ACCESS
5339 @ 49996:               SELECT 4
5340 @ 49999:               ASSVAL

   886        w(q)_flags = m&16_3fffffff
5341 @ 50000:               LINE   886 "regression-compile-tmp/nminimo.imp"
5342 @ 50038:               PUSH   W
5343 @ 50041:               PUSH   Q
5344 @ 50044:               ACCESS
5345 @ 50045:               SELECT 4
5346 @ 50048:               PUSH   M
5347 @ 50051:               PUSHI  #0x3fffffff
5348 @ 50056:               AND   
5349 @ 50057:               ASSVAL

   887        %if m >= 0 %start
5350 @ 50058:               LINE   887 "regression-compile-tmp/nminimo.imp"
5351 @ 50096:               PUSH   M
5352 @ 50099:               PUSHI  #0x00000000
5353 @ 50104:               JUMPIF < L_000a

   888          k = m&31+4096
5354 @ 50108:               LINE   888 "regression-compile-tmp/nminimo.imp"
5355 @ 50146:               PUSH   K
5356 @ 50149:               PUSH   M
5357 @ 50152:               PUSHI  #0x0000001f
5358 @ 50157:               AND   
5359 @ 50158:               PUSHI  #0x00001000
5360 @ 50163:               ADD   
5361 @ 50164:               ASSVAL

   889          count = count-k
5362 @ 50165:               LINE   889 "regression-compile-tmp/nminimo.imp"
5363 @ 50203:               PUSH   COUNT
5364 @ 50206:               PUSH   COUNT
5365 @ 50209:               PUSH   K
5366 @ 50212:               SUB   
5367 @ 50213:               ASSVAL

   890          %exit %if m&forced = 0
5368 @ 50214:               LINE   890 "regression-compile-tmp/nminimo.imp"
5369 @ 50252:               PUSH   M
5370 @ 50255:               PUSHI  #0x40000000
5371 @ 50260:               AND   
5372 @ 50261:               PUSHI  #0x00000000
5373 @ 50266:               JUMPIF # L_000d
5374 @ 50270:               GOTO   L_0007
5375 @ 50273:               LOCATE L_000d

   891        %finish
5376 @ 50276:               LINE   891 "regression-compile-tmp/nminimo.imp"
5377 @ 50314:               LOCATE L_000a

   892      %repeat
5378 @ 50317:               LINE   892 "regression-compile-tmp/nminimo.imp"
5379 @ 50355:               REPEAT L_0006
5380 @ 50358:               LOCATE L_0007

   893      w(q)_flags = w(q)_flags+sign
5381 @ 50361:               LINE   893 "regression-compile-tmp/nminimo.imp"
5382 @ 50399:               PUSH   W
5383 @ 50402:               PUSH   Q
5384 @ 50405:               ACCESS
5385 @ 50406:               SELECT 4
5386 @ 50409:               PUSH   W
5387 @ 50412:               PUSH   Q
5388 @ 50415:               ACCESS
5389 @ 50416:               SELECT 4
5390 @ 50419:               PUSHI  #0x80000000
5391 @ 50424:               ADD   
5392 @ 50425:               ASSVAL

   894      q = q+1
5393 @ 50426:               LINE   894 "regression-compile-tmp/nminimo.imp"
5394 @ 50464:               PUSH   Q
5395 @ 50467:               PUSH   Q
5396 @ 50470:               PUSHI  #0x00000001
5397 @ 50475:               ADD   
5398 @ 50476:               ASSVAL

   895    %repeat
5399 @ 50477:               LINE   895 "regression-compile-tmp/nminimo.imp"
5400 @ 50515:               REPEAT L_0003

   896  %end; !minimise
   897  
5401 @ 50518:               LINE   896 "regression-compile-tmp/nminimo.imp"
5402 @ 50556:            END    _lev0id0_MINIMISE {lev=2 --> 1}

   898  %begin {initialise}
5403 @ 50557:            LINE   898 "regression-compile-tmp/nminimo.imp"
5404 @ 50595:            BEGIN  _lev0id0_lev1id1 {lev=1 --> 2}

   899  %string(255)in1=":N",in2=":N",in3,out=":T"
5405 @ 50596:               LINE   899 "regression-compile-tmp/nminimo.imp"
5406 @ 50634:               DEF    IN1 p1=V_00c3 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5407 @ 50649:               PUSH   IN1
5408 @ 50652:               PUSHS  ":N"
5409 @ 50656:               ASSVAL
5410 @ 50657:               DEF    IN2 p1=V_00c4 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5411 @ 50672:               PUSH   IN2
5412 @ 50675:               PUSHS  ":N"
5413 @ 50679:               ASSVAL
5414 @ 50680:               DEF    IN3 p1=V_00c5 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5415 @ 50695:               DEF    OUT p1=V_00c6 a/tf=31 b/format=ff c/ostate=0  type=3 (string) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5416 @ 50710:               PUSH   OUT
5417 @ 50713:               PUSHS  ":T"
5418 @ 50717:               ASSVAL

   900  %integer bools=16_05000000{single,equin}
   901  
5419 @ 50718:               LINE   900 "regression-compile-tmp/nminimo.imp"
5420 @ 50756:               DEF    BOOLS p1=V_00c7 a/tf=11 b/format=1 c/ostate=0  type=1 (integer) form=1 (simple) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5421 @ 50773:               PUSH   BOOLS
5422 @ 50776:               PUSHI  #0x05000000
5423 @ 50781:               ASSVAL

   902    %routine init(%integername n)
5424 @ 50782:               LINE   902 "regression-compile-tmp/nminimo.imp"
5425 @ 50820:               DEF    INIT (_lev0id0_lev1id1_INIT) p1=V_00c8 a/tf=7 b/format=0 c/ostate=0  type=0 (<type:0>) form=7 (routine) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5426 @ 50836:                  START  ( FORMAL PARAMETERS  {lev=3 --> 4, nested=0 --> 1}
5427 @ 50837:                     DEF    N p1=V_00c9 a/tf=12 b/format=1 c/ostate=0  type=1 (integer) form=2 (name) special=0 (<special:0>) linkage=0 (auto) spec=0 indirect=0 unass=0
5428 @ 50850:                  FINISH ) {lev=3}

   903      n = 1 %if bools<0; bools = bools<<1
5429 @ 50851:                  LINE   903 "regression-compile-tmp/nminimo.imp"
5430 @ 50889:                  PUSH   BOOLS
5431 @ 50892:                  PUSHI  #0x00000000
5432 @ 50897:                  JUMPIF >= L_0004
5433 @ 50901:                  PUSH   N
5434 @ 50904:                  PUSHI  #0x00000001
5435 @ 50909:                  ASSVAL
5436 @ 50910:                  LOCATE L_0004
5437 @ 50913:                  LINE   903 "regression-compile-tmp/nminimo.imp"
5438 @ 50951:                  PUSH   BOOLS
5439 @ 50954:                  PUSH   BOOLS
5440 @ 50957:                  PUSHI  #0x00000001
5441 @ 50962:                  LSH   
5442 @ 50963:                  ASSVAL

   904    %end
   905  
5443 @ 50964:                  LINE   904 "regression-compile-tmp/nminimo.imp"
5444 @ 51002:               END    _lev0id0_lev1id1_INIT {lev=3 --> 2}

   906    defineparam("Input file",in3,pamnodefault)
5445 @ 51003:               LINE   906 "regression-compile-tmp/nminimo.imp"
5446 @ 51041:               PUSH   DEFINEPARAM
5447 @ 51044:               PUSHS  "Input file"
5448 @ 51056:               ASSPAR
5449 @ 51057:               PUSH   IN3
5450 @ 51060:               ASSPAR
5451 @ 51061:               PUSHI  #0x00000002
5452 @ 51066:               ASSPAR
5453 @ 51067:               CALL  

   907    defineparam("Input 2",in2,0)
5454 @ 51068:               LINE   907 "regression-compile-tmp/nminimo.imp"
5455 @ 51106:               PUSH   DEFINEPARAM
5456 @ 51109:               PUSHS  "Input 2"
5457 @ 51118:               ASSPAR
5458 @ 51119:               PUSH   IN2
5459 @ 51122:               ASSPAR
5460 @ 51123:               PUSHI  #0x00000000
5461 @ 51128:               ASSPAR
5462 @ 51129:               CALL  

   908    defineparam("Input 3",in1,0)
5463 @ 51130:               LINE   908 "regression-compile-tmp/nminimo.imp"
5464 @ 51168:               PUSH   DEFINEPARAM
5465 @ 51171:               PUSHS  "Input 3"
5466 @ 51180:               ASSPAR
5467 @ 51181:               PUSH   IN1
5468 @ 51184:               ASSPAR
5469 @ 51185:               PUSHI  #0x00000000
5470 @ 51190:               ASSPAR
5471 @ 51191:               CALL  

   909    defineparam("Output file",out,pamnewgroup)
5472 @ 51192:               LINE   909 "regression-compile-tmp/nminimo.imp"
5473 @ 51230:               PUSH   DEFINEPARAM
5474 @ 51233:               PUSHS  "Output file"
5475 @ 51246:               ASSPAR
5476 @ 51247:               PUSH   OUT
5477 @ 51250:               ASSPAR
5478 @ 51251:               PUSHI  #0x00000001
5479 @ 51256:               ASSPAR
5480 @ 51257:               CALL  

   910    defineintparam("MIN",min,0)
5481 @ 51258:               LINE   910 "regression-compile-tmp/nminimo.imp"
5482 @ 51296:               PUSH   DEFINEINTPARAM
5483 @ 51299:               PUSHS  "MIN"
5484 @ 51304:               ASSPAR
5485 @ 51305:               PUSH   MIN
5486 @ 51308:               ASSPAR
5487 @ 51309:               PUSHI  #0x00000000
5488 @ 51314:               ASSPAR
5489 @ 51315:               CALL  

   911    defineintparam("INC",inc,0)
5490 @ 51316:               LINE   911 "regression-compile-tmp/nminimo.imp"
5491 @ 51354:               PUSH   DEFINEINTPARAM
5492 @ 51357:               PUSHS  "INC"
5493 @ 51362:               ASSPAR
5494 @ 51363:               PUSH   INC
5495 @ 51366:               ASSPAR
5496 @ 51367:               PUSHI  #0x00000000
5497 @ 51372:               ASSPAR
5498 @ 51373:               CALL  

   912    defineintparam("MON",mon,0)
5499 @ 51374:               LINE   912 "regression-compile-tmp/nminimo.imp"
5500 @ 51412:               PUSH   DEFINEINTPARAM
5501 @ 51415:               PUSHS  "MON"
5502 @ 51420:               ASSPAR
5503 @ 51421:               PUSH   MON
5504 @ 51424:               ASSPAR
5505 @ 51425:               PUSHI  #0x00000000
5506 @ 51430:               ASSPAR
5507 @ 51431:               CALL  

   913    definebooleanparams("ECho,SQuash,NIn,NOut,Check,SIngle,Tabin,EQuin",bools,0)
5508 @ 51432:               LINE   913 "regression-compile-tmp/nminimo.imp"
5509 @ 51470:               PUSH   DEFINEBOOLEANPARAMS
5510 @ 51473:               PUSHS  "ECho,SQuash,NIn,NOut,Check,SIngle,Tabin,EQuin"
5511 @ 51520:               ASSPAR
5512 @ 51521:               PUSH   BOOLS
5513 @ 51524:               ASSPAR
5514 @ 51525:               PUSHI  #0x00000000
5515 @ 51530:               ASSPAR
5516 @ 51531:               CALL  

   914    processparameters(cliparam)
5517 @ 51532:               LINE   914 "regression-compile-tmp/nminimo.imp"
5518 @ 51570:               PUSH   PROCESSPARAMETERS
5519 @ 51573:               PUSH   CLIPARAM
5520 @ 51576:               CALL  
5521 @ 51577:               ASSPAR
5522 @ 51578:               CALL  

   915    init(echo)
5523 @ 51579:               LINE   915 "regression-compile-tmp/nminimo.imp"
5524 @ 51617:               PUSH   INIT
5525 @ 51620:               PUSH   ECHO
5526 @ 51623:               ASSPAR
5527 @ 51624:               CALL  

   916    init(squash)
5528 @ 51625:               LINE   916 "regression-compile-tmp/nminimo.imp"
5529 @ 51663:               PUSH   INIT
5530 @ 51666:               PUSH   SQUASH
5531 @ 51669:               ASSPAR
5532 @ 51670:               CALL  

   917    init(nin)
5533 @ 51671:               LINE   917 "regression-compile-tmp/nminimo.imp"
5534 @ 51709:               PUSH   INIT
5535 @ 51712:               PUSH   NIN
5536 @ 51715:               ASSPAR
5537 @ 51716:               CALL  

   918    init(nout)
5538 @ 51717:               LINE   918 "regression-compile-tmp/nminimo.imp"
5539 @ 51755:               PUSH   INIT
5540 @ 51758:               PUSH   NOUT
5541 @ 51761:               ASSPAR
5542 @ 51762:               CALL  

   919    init(check)
5543 @ 51763:               LINE   919 "regression-compile-tmp/nminimo.imp"
5544 @ 51801:               PUSH   INIT
5545 @ 51804:               PUSH   CHECK
5546 @ 51807:               ASSPAR
5547 @ 51808:               CALL  

   920    init(single)
5548 @ 51809:               LINE   920 "regression-compile-tmp/nminimo.imp"
5549 @ 51847:               PUSH   INIT
5550 @ 51850:               PUSH   SINGLE
5551 @ 51853:               ASSPAR
5552 @ 51854:               CALL  

   921    init(tabin)
5553 @ 51855:               LINE   921 "regression-compile-tmp/nminimo.imp"
5554 @ 51893:               PUSH   INIT
5555 @ 51896:               PUSH   TABIN
5556 @ 51899:               ASSPAR
5557 @ 51900:               CALL  

   922    tabin = 0 %if bools<0 {equin}
5558 @ 51901:               LINE   922 "regression-compile-tmp/nminimo.imp"
5559 @ 51939:               PUSH   BOOLS
5560 @ 51942:               PUSHI  #0x00000000
5561 @ 51947:               JUMPIF >= L_0004
5562 @ 51951:               PUSH   TABIN
5563 @ 51954:               PUSHI  #0x00000000
5564 @ 51959:               ASSVAL
5565 @ 51960:               LOCATE L_0004

   923    openinput(instream-2,in3)
5566 @ 51963:               LINE   923 "regression-compile-tmp/nminimo.imp"
5567 @ 52001:               PUSH   OPENINPUT
5568 @ 52004:               PUSH   INSTREAM
5569 @ 52007:               PUSHI  #0x00000002
5570 @ 52012:               SUB   
5571 @ 52013:               ASSPAR
5572 @ 52014:               PUSH   IN3
5573 @ 52017:               ASSPAR
5574 @ 52018:               CALL  

   924    openinput(instream-1,in2)
5575 @ 52019:               LINE   924 "regression-compile-tmp/nminimo.imp"
5576 @ 52057:               PUSH   OPENINPUT
5577 @ 52060:               PUSH   INSTREAM
5578 @ 52063:               PUSHI  #0x00000001
5579 @ 52068:               SUB   
5580 @ 52069:               ASSPAR
5581 @ 52070:               PUSH   IN2
5582 @ 52073:               ASSPAR
5583 @ 52074:               CALL  

   925    openinput(instream,in1)
5584 @ 52075:               LINE   925 "regression-compile-tmp/nminimo.imp"
5585 @ 52113:               PUSH   OPENINPUT
5586 @ 52116:               PUSH   INSTREAM
5587 @ 52119:               ASSPAR
5588 @ 52120:               PUSH   IN1
5589 @ 52123:               ASSPAR
5590 @ 52124:               CALL  

   926    openoutput(outstream,out)
5591 @ 52125:               LINE   926 "regression-compile-tmp/nminimo.imp"
5592 @ 52163:               PUSH   OPENOUTPUT
5593 @ 52166:               PUSHI  #0x00000001
5594 @ 52171:               ASSPAR
5595 @ 52172:               PUSH   OUT
5596 @ 52175:               ASSPAR
5597 @ 52176:               CALL  

   927  %end
   928  
5598 @ 52177:               LINE   927 "regression-compile-tmp/nminimo.imp"
5599 @ 52215:            END    _lev0id0_lev1id1 {lev=2 --> 1}

   929  select output(outstream)
5600 @ 52216:            LINE   929 "regression-compile-tmp/nminimo.imp"
5601 @ 52254:            PUSH   SELECTOUTPUT
5602 @ 52257:            PUSHI  #0x00000001
5603 @ 52262:            ASSPAR
5604 @ 52263:            CALL  

   930  select input(instream)
5605 @ 52264:            LINE   930 "regression-compile-tmp/nminimo.imp"
5606 @ 52302:            PUSH   SELECTINPUT
5607 @ 52305:            PUSH   INSTREAM
5608 @ 52308:            ASSPAR
5609 @ 52309:            CALL  

   931  %cycle
5610 @ 52310:            LINE   931 "regression-compile-tmp/nminimo.imp"
5611 @ 52348:            LOCATE L_0003

   932    start = cputime
5612 @ 52351:            LINE   932 "regression-compile-tmp/nminimo.imp"
5613 @ 52389:            PUSH   START
5614 @ 52392:            PUSH   CPUTIME
5615 @ 52395:            CALL  
5616 @ 52396:            ASSVAL

   933    readin
5617 @ 52397:            LINE   933 "regression-compile-tmp/nminimo.imp"
5618 @ 52435:            PUSH   READIN
5619 @ 52438:            CALL  

   934    printstring("Read in:")
5620 @ 52439:            LINE   934 "regression-compile-tmp/nminimo.imp"
5621 @ 52477:            PUSH   PRINTSTRING
5622 @ 52480:            PUSHS  "Read in:"
5623 @ 52490:            ASSPAR
5624 @ 52491:            CALL  

   935    print time
5625 @ 52492:            LINE   935 "regression-compile-tmp/nminimo.imp"
5626 @ 52530:            PUSH   PRINTTIME
5627 @ 52533:            CALL  

   936    newline
5628 @ 52534:            LINE   936 "regression-compile-tmp/nminimo.imp"
5629 @ 52572:            PUSH   NEWLINE
5630 @ 52575:            CALL  

   937    convert
5631 @ 52576:            LINE   937 "regression-compile-tmp/nminimo.imp"
5632 @ 52614:            PUSH   CONVERT
5633 @ 52617:            CALL  

   938    aim = 999999;  count = 0
5634 @ 52618:            LINE   938 "regression-compile-tmp/nminimo.imp"
5635 @ 52656:            PUSH   AIM
5636 @ 52659:            PUSHI  #0x000f423f
5637 @ 52664:            ASSVAL
5638 @ 52665:            LINE   938 "regression-compile-tmp/nminimo.imp"
5639 @ 52703:            PUSH   COUNT
5640 @ 52706:            PUSHI  #0x00000000
5641 @ 52711:            ASSVAL

   939    printstring("Implicants:")
5642 @ 52712:            LINE   939 "regression-compile-tmp/nminimo.imp"
5643 @ 52750:            PUSH   PRINTSTRING
5644 @ 52753:            PUSHS  "Implicants:"
5645 @ 52766:            ASSPAR
5646 @ 52767:            CALL  

   940    write(sp-dclim,3)
5647 @ 52768:            LINE   940 "regression-compile-tmp/nminimo.imp"
5648 @ 52806:            PUSH   WRITE
5649 @ 52809:            PUSH   SP
5650 @ 52812:            PUSH   DCLIM
5651 @ 52815:            SUB   
5652 @ 52816:            ASSPAR
5653 @ 52817:            PUSHI  #0x00000003
5654 @ 52822:            ASSPAR
5655 @ 52823:            CALL  

   941    print time
5656 @ 52824:            LINE   941 "regression-compile-tmp/nminimo.imp"
5657 @ 52862:            PUSH   PRINTTIME
5658 @ 52865:            CALL  

   942    newline
5659 @ 52866:            LINE   942 "regression-compile-tmp/nminimo.imp"
5660 @ 52904:            PUSH   NEWLINE
5661 @ 52907:            CALL  

   943    print all %if inc#0 %and mon&16#0
5662 @ 52908:            LINE   943 "regression-compile-tmp/nminimo.imp"
5663 @ 52946:            PUSH   INC
5664 @ 52949:            PUSHI  #0x00000000
5665 @ 52954:            JUMPIF = L_0007
5666 @ 52958:            PUSH   MON
5667 @ 52961:            PUSHI  #0x00000010
5668 @ 52966:            AND   
5669 @ 52967:            PUSHI  #0x00000000
5670 @ 52972:            JUMPIF = L_0007
5671 @ 52976:            PUSH   PRINTALL
5672 @ 52979:            CALL  
5673 @ 52980:            LOCATE L_0007

   944    reduce1
5674 @ 52983:            LINE   944 "regression-compile-tmp/nminimo.imp"
5675 @ 53021:            PUSH   REDUCE1
5676 @ 53024:            CALL  

   945    printstring("Reduced(1):")
5677 @ 53025:            LINE   945 "regression-compile-tmp/nminimo.imp"
5678 @ 53063:            PUSH   PRINTSTRING
5679 @ 53066:            PUSHS  "Reduced(1):"
5680 @ 53079:            ASSPAR
5681 @ 53080:            CALL  

   946    write(sp-dclim,3)
5682 @ 53081:            LINE   946 "regression-compile-tmp/nminimo.imp"
5683 @ 53119:            PUSH   WRITE
5684 @ 53122:            PUSH   SP
5685 @ 53125:            PUSH   DCLIM
5686 @ 53128:            SUB   
5687 @ 53129:            ASSPAR
5688 @ 53130:            PUSHI  #0x00000003
5689 @ 53135:            ASSPAR
5690 @ 53136:            CALL  

   947    printstring(" (nucleus")
5691 @ 53137:            LINE   947 "regression-compile-tmp/nminimo.imp"
5692 @ 53175:            PUSH   PRINTSTRING
5693 @ 53178:            PUSHS  " (nucleus"
5694 @ 53189:            ASSPAR
5695 @ 53190:            CALL  

   948    pcount
5696 @ 53191:            LINE   948 "regression-compile-tmp/nminimo.imp"
5697 @ 53229:            PUSH   PCOUNT
5698 @ 53232:            CALL  

   949    printsymbol(')')
5699 @ 53233:            LINE   949 "regression-compile-tmp/nminimo.imp"
5700 @ 53271:            PUSH   PRINTSYMBOL
5701 @ 53274:            PUSHI  #0x00000029
5702 @ 53279:            ASSPAR
5703 @ 53280:            CALL  

   950    print time
5704 @ 53281:            LINE   950 "regression-compile-tmp/nminimo.imp"
5705 @ 53319:            PUSH   PRINTTIME
5706 @ 53322:            CALL  

   951    newline
5707 @ 53323:            LINE   951 "regression-compile-tmp/nminimo.imp"
5708 @ 53361:            PUSH   NEWLINE
5709 @ 53364:            CALL  

   952    print all %if inc # 0 %and mon&16#0
5710 @ 53365:            LINE   952 "regression-compile-tmp/nminimo.imp"
5711 @ 53403:            PUSH   INC
5712 @ 53406:            PUSHI  #0x00000000
5713 @ 53411:            JUMPIF = L_0007
5714 @ 53415:            PUSH   MON
5715 @ 53418:            PUSHI  #0x00000010
5716 @ 53423:            AND   
5717 @ 53424:            PUSHI  #0x00000000
5718 @ 53429:            JUMPIF = L_0007
5719 @ 53433:            PUSH   PRINTALL
5720 @ 53436:            CALL  
5721 @ 53437:            LOCATE L_0007

   953    %if sp # esslim %start
5722 @ 53440:            LINE   953 "regression-compile-tmp/nminimo.imp"
5723 @ 53478:            PUSH   SP
5724 @ 53481:            PUSH   ESSLIM
5725 @ 53484:            JUMPIF = L_0007

   954      reduce2
5726 @ 53488:            LINE   954 "regression-compile-tmp/nminimo.imp"
5727 @ 53526:            PUSH   REDUCE2
5728 @ 53529:            CALL  

   955      printstring("Reduced(2):")
5729 @ 53530:            LINE   955 "regression-compile-tmp/nminimo.imp"
5730 @ 53568:            PUSH   PRINTSTRING
5731 @ 53571:            PUSHS  "Reduced(2):"
5732 @ 53584:            ASSPAR
5733 @ 53585:            CALL  

   956      write(sp-dclim,3)
5734 @ 53586:            LINE   956 "regression-compile-tmp/nminimo.imp"
5735 @ 53624:            PUSH   WRITE
5736 @ 53627:            PUSH   SP
5737 @ 53630:            PUSH   DCLIM
5738 @ 53633:            SUB   
5739 @ 53634:            ASSPAR
5740 @ 53635:            PUSHI  #0x00000003
5741 @ 53640:            ASSPAR
5742 @ 53641:            CALL  

   957      printstring(" (nucleus")
5743 @ 53642:            LINE   957 "regression-compile-tmp/nminimo.imp"
5744 @ 53680:            PUSH   PRINTSTRING
5745 @ 53683:            PUSHS  " (nucleus"
5746 @ 53694:            ASSPAR
5747 @ 53695:            CALL  

   958      pcount
5748 @ 53696:            LINE   958 "regression-compile-tmp/nminimo.imp"
5749 @ 53734:            PUSH   PCOUNT
5750 @ 53737:            CALL  

   959      printsymbol(')')
5751 @ 53738:            LINE   959 "regression-compile-tmp/nminimo.imp"
5752 @ 53776:            PUSH   PRINTSYMBOL
5753 @ 53779:            PUSHI  #0x00000029
5754 @ 53784:            ASSPAR
5755 @ 53785:            CALL  

   960      order %if sp # esslim
5756 @ 53786:            LINE   960 "regression-compile-tmp/nminimo.imp"
5757 @ 53824:            PUSH   SP
5758 @ 53827:            PUSH   ESSLIM
5759 @ 53830:            JUMPIF = L_000a
5760 @ 53834:            PUSH   ORDER
5761 @ 53837:            CALL  
5762 @ 53838:            LOCATE L_000a

   961      print time
5763 @ 53841:            LINE   961 "regression-compile-tmp/nminimo.imp"
5764 @ 53879:            PUSH   PRINTTIME
5765 @ 53882:            CALL  

   962      newline
5766 @ 53883:            LINE   962 "regression-compile-tmp/nminimo.imp"
5767 @ 53921:            PUSH   NEWLINE
5768 @ 53924:            CALL  

   963      print all %if inc # 0 %and mon&16#0
5769 @ 53925:            LINE   963 "regression-compile-tmp/nminimo.imp"
5770 @ 53963:            PUSH   INC
5771 @ 53966:            PUSHI  #0x00000000
5772 @ 53971:            JUMPIF = L_000a
5773 @ 53975:            PUSH   MON
5774 @ 53978:            PUSHI  #0x00000010
5775 @ 53983:            AND   
5776 @ 53984:            PUSHI  #0x00000000
5777 @ 53989:            JUMPIF = L_000a
5778 @ 53993:            PUSH   PRINTALL
5779 @ 53996:            CALL  
5780 @ 53997:            LOCATE L_000a

   964    %finish
5781 @ 54000:            LINE   964 "regression-compile-tmp/nminimo.imp"
5782 @ 54038:            LOCATE L_0007

   965    monitor(esslim) %if mon&2 # 0
5783 @ 54041:            LINE   965 "regression-compile-tmp/nminimo.imp"
5784 @ 54079:            PUSH   MON
5785 @ 54082:            PUSHI  #0x00000002
5786 @ 54087:            AND   
5787 @ 54088:            PUSHI  #0x00000000
5788 @ 54093:            JUMPIF = L_0007
5789 @ 54097:            PUSH   MONITOR
5790 @ 54100:            PUSH   ESSLIM
5791 @ 54103:            ASSPAR
5792 @ 54104:            CALL  
5793 @ 54105:            LOCATE L_0007

   966    %if sp # esslim %start
5794 @ 54108:            LINE   966 "regression-compile-tmp/nminimo.imp"
5795 @ 54146:            PUSH   SP
5796 @ 54149:            PUSH   ESSLIM
5797 @ 54152:            JUMPIF = L_0007

   967      monitor(sp) %if mon&8 # 0
5798 @ 54156:            LINE   967 "regression-compile-tmp/nminimo.imp"
5799 @ 54194:            PUSH   MON
5800 @ 54197:            PUSHI  #0x00000008
5801 @ 54202:            AND   
5802 @ 54203:            PUSHI  #0x00000000
5803 @ 54208:            JUMPIF = L_000a
5804 @ 54212:            PUSH   MONITOR
5805 @ 54215:            PUSH   SP
5806 @ 54218:            ASSPAR
5807 @ 54219:            CALL  
5808 @ 54220:            LOCATE L_000a

   968      printstring("Minimised:")
5809 @ 54223:            LINE   968 "regression-compile-tmp/nminimo.imp"
5810 @ 54261:            PUSH   PRINTSTRING
5811 @ 54264:            PUSHS  "Minimised:"
5812 @ 54276:            ASSPAR
5813 @ 54277:            CALL  

   969      minimise
5814 @ 54278:            LINE   969 "regression-compile-tmp/nminimo.imp"
5815 @ 54316:            PUSH   MINIMISE
5816 @ 54319:            CALL  

   970    %finish
5817 @ 54320:            LINE   970 "regression-compile-tmp/nminimo.imp"
5818 @ 54358:            LOCATE L_0007

   971    print all %if inc # 0 %and mon&1 = 0
5819 @ 54361:            LINE   971 "regression-compile-tmp/nminimo.imp"
5820 @ 54399:            PUSH   INC
5821 @ 54402:            PUSHI  #0x00000000
5822 @ 54407:            JUMPIF = L_0007
5823 @ 54411:            PUSH   MON
5824 @ 54414:            PUSHI  #0x00000001
5825 @ 54419:            AND   
5826 @ 54420:            PUSHI  #0x00000000
5827 @ 54425:            JUMPIF # L_0007
5828 @ 54429:            PUSH   PRINTALL
5829 @ 54432:            CALL  
5830 @ 54433:            LOCATE L_0007

   972    printstring("  Cells used:")
5831 @ 54436:            LINE   972 "regression-compile-tmp/nminimo.imp"
5832 @ 54474:            PUSH   PRINTSTRING
5833 @ 54477:            PUSHS  "  Cells used:"
5834 @ 54492:            ASSPAR
5835 @ 54493:            CALL  

   973    write(storebound-1-minsep,1)
5836 @ 54494:            LINE   973 "regression-compile-tmp/nminimo.imp"
5837 @ 54532:            PUSH   WRITE
5838 @ 54535:            PUSHI  #0x000007d0
5839 @ 54540:            PUSHI  #0x00000001
5840 @ 54545:            SUB   
5841 @ 54546:            PUSH   MINSEP
5842 @ 54549:            SUB   
5843 @ 54550:            ASSPAR
5844 @ 54551:            PUSHI  #0x00000001
5845 @ 54556:            ASSPAR
5846 @ 54557:            CALL  

   974    print time
5847 @ 54558:            LINE   974 "regression-compile-tmp/nminimo.imp"
5848 @ 54596:            PUSH   PRINTTIME
5849 @ 54599:            CALL  

   975    newline
5850 @ 54600:            LINE   975 "regression-compile-tmp/nminimo.imp"
5851 @ 54638:            PUSH   NEWLINE
5852 @ 54641:            CALL  

   976  %repeat
   977  
5853 @ 54642:            LINE   976 "regression-compile-tmp/nminimo.imp"
5854 @ 54680:            REPEAT L_0003

   978  %endofprogram
   979  
5855 @ 54683:            LINE   978 "regression-compile-tmp/nminimo.imp"
5856 @ 54721:         END    _lev0id0 {lev=1 --> 0}
5857 @ 54722:         END     {lev=0 --> -1}
5858 @ 54723: 

