#include "chdecl.h"
void CH_type_assign(current, sched, cop)
#define ARGUMENTS 18
#include "chhead.h"
select: switch (SELECTOR) {
    case 0: goto c0;
    case 1: goto cb4;
    case 2: goto c5;
    case 3: goto c51;
    case 4: goto cb54;
    case 5: goto c55;
    case 6: goto cb75;
    case 7: goto c76;
    case 8: goto cb78;
    case 9: goto c79;
    case 10: goto cb81;
    case 11: goto c82;
    case 12: goto cb84;
    case 13: goto c85;
    case 14: goto cb87;
    case 15: goto c88;
    case 16: goto cb90;
    case 17: goto c91;
    case 18: goto cb93;
    case 19: goto c94;
    case 20: goto cb96;
    case 21: goto c97;
    case 22: goto cb99;
    case 23: goto c100;
    case 24: goto c102;
    case 25: goto c103;
    case 26: goto cb104;
    case 27: goto c105;
    case 28: goto c127;
    case 29: goto c140;
    case 30: goto c142;
    case 31: goto c151;
    case 32: goto c152;
    case 33: goto c155;
    case 34: goto c157;
    case 35: goto c159;
    case 36: goto c176;
    case 37: goto c191;  }
c0:
/* block , 0 */
  if((ch_returncode = che_block(QUAL(0),sched)) != Normal)
     goto ch_raise_exception;
/* block , 1 */
  if((ch_returncode = che_block(QUAL(1),sched)) != Normal)
     goto ch_raise_exception;
/* new_inport 3 */
  if ((ch_val.inport = make_inport()) == nil) goto ch_depletion;
  (*(REF(3).tsdr)->finalize)(REF(3).value,F_DISCARD,sched);
  REF(3).value = ch_val; REF(3).tsdr = & dr_inport;
/* connect 4 3 */
  if (REF(3).value.inport->refcount == MAXCOUNTER) goto ch_depletion;
  (*(REF(4).tsdr)->finalize)(REF(4).value,F_DISCARD,sched);
  REF(3).value.inport->refcount++;
  REF(4).value.outport = REF(3).value.inport;
  REF(4).tsdr = & dr_outport;
  current->ip = 1;
cb4:
/* receive 5 0 */
  if ((ch_returncode = che_receive(DEF(5),DEF(0),sched)) != Normal)
     goto ch_raise_exception;
  return;
c5:
/* prog_lit 6 , 2 */
  if ((ch_returncode = che_prog_lit(DEF(6),QUAL(2),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 7 6 , 3 */
  if ((ch_returncode = che_procedure(DEF(7),DEF(6),QUAL(3),sched)) != Normal)
     goto ch_raise_exception;
/* discard 6 */
  (*(REF(6).tsdr)->finalize)(REF(6).value,F_DISCARD,sched);
  REF(6).tsdr = & dr_bottom;
/* move 8 7 */
  (*(REF(8).tsdr)->finalize)(REF(8).value,F_DISCARD,sched);
  REF(8) = REF(7);
  REF(7).tsdr = & dr_bottom;
/* prog_lit 9 , 4 */
  if ((ch_returncode = che_prog_lit(DEF(9),QUAL(4),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 10 9 , 3 */
  if ((ch_returncode = che_procedure(DEF(10),DEF(9),QUAL(3),sched)) != Normal)
     goto ch_raise_exception;
/* discard 9 */
  (*(REF(9).tsdr)->finalize)(REF(9).value,F_DISCARD,sched);
  REF(9).tsdr = & dr_bottom;
/* move 11 10 */
  (*(REF(11).tsdr)->finalize)(REF(11).value,F_DISCARD,sched);
  REF(11) = REF(10);
  REF(10).tsdr = & dr_bottom;
/* prog_lit 12 , 5 */
  if ((ch_returncode = che_prog_lit(DEF(12),QUAL(5),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 13 12 , 3 */
  if ((ch_returncode = che_procedure(DEF(13),DEF(12),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 12 */
  (*(REF(12).tsdr)->finalize)(REF(12).value,F_DISCARD,sched);
  REF(12).tsdr = & dr_bottom;
/* move 14 13 */
  (*(REF(14).tsdr)->finalize)(REF(14).value,F_DISCARD,sched);
  REF(14) = REF(13);
  REF(13).tsdr = & dr_bottom;
/* prog_lit 15 , 6 */
  if ((ch_returncode = che_prog_lit(DEF(15),QUAL(6),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 16 15 , 3 */
  if ((ch_returncode = che_procedure(DEF(16),DEF(15),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 15 */
  (*(REF(15).tsdr)->finalize)(REF(15).value,F_DISCARD,sched);
  REF(15).tsdr = & dr_bottom;
/* move 17 16 */
  (*(REF(17).tsdr)->finalize)(REF(17).value,F_DISCARD,sched);
  REF(17) = REF(16);
  REF(16).tsdr = & dr_bottom;
/* prog_lit 18 , 7 */
  if ((ch_returncode = che_prog_lit(DEF(18),QUAL(7),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 19 18 , 3 */
  if ((ch_returncode = che_procedure(DEF(19),DEF(18),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 18 */
  (*(REF(18).tsdr)->finalize)(REF(18).value,F_DISCARD,sched);
  REF(18).tsdr = & dr_bottom;
/* move 20 19 */
  (*(REF(20).tsdr)->finalize)(REF(20).value,F_DISCARD,sched);
  REF(20) = REF(19);
  REF(19).tsdr = & dr_bottom;
/* prog_lit 21 , 8 */
  if ((ch_returncode = che_prog_lit(DEF(21),QUAL(8),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 22 21 , 3 */
  if ((ch_returncode = che_procedure(DEF(22),DEF(21),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 21 */
  (*(REF(21).tsdr)->finalize)(REF(21).value,F_DISCARD,sched);
  REF(21).tsdr = & dr_bottom;
/* move 23 22 */
  (*(REF(23).tsdr)->finalize)(REF(23).value,F_DISCARD,sched);
  REF(23) = REF(22);
  REF(22).tsdr = & dr_bottom;
/* prog_lit 24 , 9 */
  if ((ch_returncode = che_prog_lit(DEF(24),QUAL(9),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 25 24 , 3 */
  if ((ch_returncode = che_procedure(DEF(25),DEF(24),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 24 */
  (*(REF(24).tsdr)->finalize)(REF(24).value,F_DISCARD,sched);
  REF(24).tsdr = & dr_bottom;
/* move 26 25 */
  (*(REF(26).tsdr)->finalize)(REF(26).value,F_DISCARD,sched);
  REF(26) = REF(25);
  REF(25).tsdr = & dr_bottom;
/* prog_lit 27 , 10 */
  if ((ch_returncode = che_prog_lit(DEF(27),QUAL(10),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 28 27 , 3 */
  if ((ch_returncode = che_procedure(DEF(28),DEF(27),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 27 */
  (*(REF(27).tsdr)->finalize)(REF(27).value,F_DISCARD,sched);
  REF(27).tsdr = & dr_bottom;
/* move 29 28 */
  (*(REF(29).tsdr)->finalize)(REF(29).value,F_DISCARD,sched);
  REF(29) = REF(28);
  REF(28).tsdr = & dr_bottom;
/* prog_lit 30 , 11 */
  if ((ch_returncode = che_prog_lit(DEF(30),QUAL(11),sched)) != Normal) 
     goto ch_raise_exception;
/* procedure 31 30 , 3 */
  if ((ch_returncode = che_procedure(DEF(31),DEF(30),QUAL(3)
    ,sched)) != Normal) goto ch_raise_exception;
/* discard 30 */
  (*(REF(30).tsdr)->finalize)(REF(30).value,F_DISCARD,sched);
  REF(30).tsdr = & dr_bottom;
/* move 32 31 */
  (*(REF(32).tsdr)->finalize)(REF(32).value,F_DISCARD,sched);
  REF(32) = REF(31);
  REF(31).tsdr = & dr_bottom;
/* copy 33 5.0 */
  if((ch_returncode = cp_outport(& ch_val, REF(5)DOT(0).value)) != Normal)
     goto ch_raise_exception;
  (*(REF(33).tsdr)->finalize)(REF(33).value,F_DISCARD,sched);
  REF(33).value = ch_val;
  REF(33).tsdr = & dr_outport;
/* copy 34 5.1 */
  if((ch_returncode = (REF(5)DOT(1).tsdr->copy)(& ch_val, REF(5)DOT(1).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(34).tsdr)->finalize)(REF(34).value,F_DISCARD,sched);
  REF(34).value = ch_val;
  REF(34).tsdr = datarepmap[REF(5)DOT(1).tsdr->number];
/* copy 35 5.2 */
  if((ch_returncode = (REF(5)DOT(2).tsdr->copy)(& ch_val, REF(5)DOT(2).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(35).tsdr)->finalize)(REF(35).value,F_DISCARD,sched);
  REF(35).value = ch_val;
  REF(35).tsdr = datarepmap[REF(5)DOT(2).tsdr->number];
/* move 5.3 4 */
  (*(REF(5)DOT(3).tsdr)->finalize)(REF(5)DOT(3).value,F_DISCARD,sched);
  REF(5)DOT(3) = REF(4);
  REF(4).tsdr = & dr_bottom;
/* return 5 */
  if (ch_caller = do_return(REF(5).value)) {
    if (ch_caller->type < CProcess) ch_caller->ip++;
      sched->wakeup_proc(sched, ch_caller);}
  else rem_return(REF(5).value);
  REF(5).tsdr = & dr_bottom;
/* discard 0 */
  (*(REF(0).tsdr)->finalize)(REF(0).value,F_DISCARD,sched);
  REF(0).tsdr = & dr_bottom;
/* new_record 36 , 3 */
  if ((ch_val.record = new_record(3)) == nil) goto ch_depletion;
  (*(REF(36).tsdr)->finalize)(REF(36).value,F_DISCARD,sched);
  REF(36).value = ch_val; REF(36).tsdr = & dr_record;
/* ordenum_lit 36.1 , 3 */
  REF(36)DOT(1).value.ord_enum = 3;
  REF(36)DOT(1).tsdr = & dr_ord_enumeration;
/* new_table 36.2 , 12 */
  if ((ch_returncode = che_new_table(DEF(36)DOT(2),QUAL(12)
    ,sched)) != Normal)  goto ch_raise_exception;
c51:
/* noop */
  
/* block , 13 */
  if((ch_returncode = che_block(QUAL(13),sched)) != Normal)
     goto ch_raise_exception;
  current->ip = 4;
cb54:
/* receive 37 3 */
  if ((ch_returncode = che_receive(DEF(37),DEF(3),sched)) != Normal)
     goto ch_raise_exception;
  return;
c55:
/* noop */
  
/* equal . 37.0 =(8) , 75 */
  if ( REF(37)DOT(0).value.enumeration == 8 ) goto c75;
/* equal . 37.0 =(7) , 78 */
  if ( REF(37)DOT(0).value.enumeration == 7 ) goto c78;
/* equal . 37.0 =(6) , 81 */
  if ( REF(37)DOT(0).value.enumeration == 6 ) goto c81;
/* equal . 37.0 =(5) , 84 */
  if ( REF(37)DOT(0).value.enumeration == 5 ) goto c84;
/* equal . 37.0 =(4) , 87 */
  if ( REF(37)DOT(0).value.enumeration == 4 ) goto c87;
/* equal . 37.0 =(3) , 90 */
  if ( REF(37)DOT(0).value.enumeration == 3 ) goto c90;
/* equal . 37.0 =(2) , 93 */
  if ( REF(37)DOT(0).value.enumeration == 2 ) goto c93;
/* equal . 37.0 =(1) , 96 */
  if ( REF(37)DOT(0).value.enumeration == 1 ) goto c96;
/* equal . 37.0 =(0) , 99 */
  if ( REF(37)DOT(0).value.enumeration == 0 ) goto c99;
/* branch , 102 */
   goto c102;
c75:
  current->ip = 6;
cb75:
/* call 32 38 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(32),
          arguments[1] = DEF(38),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c76:
/* move 39 38 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(38);
  REF(38).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c78:
  current->ip = 8;
cb78:
/* call 29 40 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(29),
          arguments[1] = DEF(40),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c79:
/* move 39 40 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(40);
  REF(40).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c81:
  current->ip = 10;
cb81:
/* call 26 41 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(26),
          arguments[1] = DEF(41),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c82:
/* move 39 41 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(41);
  REF(41).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c84:
  current->ip = 12;
cb84:
/* call 23 42 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(23),
          arguments[1] = DEF(42),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c85:
/* move 39 42 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(42);
  REF(42).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c87:
  current->ip = 14;
cb87:
/* call 20 43 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(20),
          arguments[1] = DEF(43),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c88:
/* move 39 43 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(43);
  REF(43).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c90:
  current->ip = 16;
cb90:
/* call 17 44 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(17),
          arguments[1] = DEF(44),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c91:
/* move 39 44 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(44);
  REF(44).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c93:
  current->ip = 18;
cb93:
/* call 14 45 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(14),
          arguments[1] = DEF(45),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c94:
/* move 39 45 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(45);
  REF(45).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c96:
  current->ip = 20;
cb96:
/* call 11 46 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(11),
          arguments[1] = DEF(46),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c97:
/* move 39 46 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(46);
  REF(46).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c99:
  current->ip = 22;
cb99:
/* call 8 47 , 14 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(8),
          arguments[1] = DEF(47),
          arguments[1+1] = nil,& arguments[0]),QUAL(14),sched)) != Normal)
     goto ch_raise_exception;
  return;
c100:
/* move 39 47 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39) = REF(47);
  REF(47).tsdr = & dr_bottom;
/* branch , 103 */
   goto c103;
c102:
/* exit , 15 */
  ch_e = handler_type__exit; ch_val = QUAL(15); goto ch_exception;
c103:
/* block , 16 */
  if((ch_returncode = che_block(QUAL(16),sched)) != Normal)
     goto ch_raise_exception;
  current->ip = 26;
cb104:
/* call 33 37.1 34.1.0 35 37.2 48 , 17 */
  if ((ch_returncode = che_call((
          arguments[0] = DEF(33),
          arguments[1] = DEF(37)DOT(1),
          arguments[2] = DEF(34)DOT(1)DOT(0),
          arguments[3] = DEF(35),
          arguments[4] = DEF(37)DOT(2),
          arguments[5] = DEF(48),
          arguments[5+1] = nil,& arguments[0]),QUAL(17),sched)) != Normal)
     goto ch_raise_exception;
  return;
c105:
/* noop */
  
/* equal . 48 39 , 123 */
  if ( (REF(48).tsdr->equal)(REF(48).value,REF(39).value) ) goto c123;
/* copy 49 36 */
  if((ch_returncode = cp_record(& ch_val, REF(36).value)) != Normal)
     goto ch_raise_exception;
  (*(REF(49).tsdr)->finalize)(REF(49).value,F_DISCARD,sched);
  REF(49).value = ch_val;
  REF(49).tsdr = & dr_record;
/* copy 50 37.6 */
  if((ch_returncode = (REF(37)DOT(6).tsdr->copy)(& ch_val, REF(37)DOT(6).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(50).tsdr)->finalize)(REF(50).value,F_DISCARD,sched);
  REF(50).value = ch_val;
  REF(50).tsdr = datarepmap[REF(37)DOT(6).tsdr->number];
/* unite 49.0 50 , 0 */
  if ((ch_returncode = che_unite(DEF(49)DOT(0),DEF(50),sched,0)) != Normal)
     goto ch_raise_exception;
/* copy 51 37.1 */
  if((ch_returncode = (REF(37)DOT(1).tsdr->copy)(& ch_val, REF(37)DOT(1).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(51).tsdr)->finalize)(REF(51).value,F_DISCARD,sched);
  REF(51).value = ch_val;
  REF(51).tsdr = datarepmap[REF(37)DOT(1).tsdr->number];
/* unite 52 51 , 0 */
  if ((ch_returncode = che_unite(DEF(52),DEF(51),sched,0)) != Normal)
     goto ch_raise_exception;
/* insert 49.2 52 */
  if ((ch_returncode = insertfunc(DEF(49)DOT(2),DEF(52),FALSE,0)) != Normal)
     goto ch_raise_exception;
/* unite 52 48 , 2 */
  if ((ch_returncode = che_unite(DEF(52),DEF(48),sched,2)) != Normal)
     goto ch_raise_exception;
/* insert 49.2 52 */
  if ((ch_returncode = insertfunc(DEF(49)DOT(2),DEF(52),FALSE,0)) != Normal)
     goto ch_raise_exception;
/* unite 52 39 , 2 */
  if ((ch_returncode = che_unite(DEF(52),DEF(39),sched,2)) != Normal)
     goto ch_raise_exception;
/* insert 49.2 52 */
  if ((ch_returncode = insertfunc(DEF(49)DOT(2),DEF(52),FALSE,0)) != Normal)
     goto ch_raise_exception;
/* insert 37.5 49 */
  if ((ch_returncode = insertfunc(DEF(37)DOT(5),DEF(49),FALSE,0)) != Normal)
     goto ch_raise_exception;
c123:
/* discard 39 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39).tsdr = & dr_bottom;
/* discard 48 */
  (*(REF(48).tsdr)->finalize)(REF(48).value,F_DISCARD,sched);
  REF(48).tsdr = & dr_bottom;
/* endblock */
  che_endblock(sched);
/* branch , 152 */
   goto c152;
c127:
/* size 53 37.1.1 */
  REF(53).value.integer = REF(37)DOT(1)DOT(1).value.table->size;
  REF(53).tsdr = & dr_integer;
/* notequal . 53 =(0) , 142 */
  if ( REF(53).value.integer != 0 ) goto c142;
/* new_record 54 , 2 */
  if ((ch_val.record = new_record(2)) == nil) goto ch_depletion;
  (*(REF(54).tsdr)->finalize)(REF(54).value,F_DISCARD,sched);
  REF(54).value = ch_val; REF(54).tsdr = & dr_record;
/* copy 54.0 37.1.0 */
  if((ch_returncode = (REF(37)DOT(1)DOT(0).tsdr->copy)(& ch_val, 
    REF(37)DOT(1)DOT(0).value)) != Normal) goto ch_raise_exception;
  (*(REF(54)DOT(0).tsdr)->finalize)(REF(54)DOT(0).value,F_DISCARD,sched);
  REF(54)DOT(0).value = ch_val;
  REF(54)DOT(0).tsdr = datarepmap[REF(37)DOT(1)DOT(0).tsdr->number];
/* move 54.1 39 */
  (*(REF(54)DOT(1).tsdr)->finalize)(REF(54)DOT(1).value,F_DISCARD,sched);
  REF(54)DOT(1) = REF(39);
  REF(39).tsdr = & dr_bottom;
/* insert 37.2 54 */
  if ((ch_returncode = insertfunc(DEF(37)DOT(2),DEF(54),FALSE,0)) != Normal)
     goto ch_raise_exception;
/* block , 18 */
  if((ch_returncode = che_block(QUAL(18),sched)) != Normal)
     goto ch_raise_exception;
/* copy 55 37.1.0 */
  if((ch_returncode = (REF(37)DOT(1)DOT(0).tsdr->copy)(& ch_val, 
    REF(37)DOT(1)DOT(0).value)) != Normal) goto ch_raise_exception;
  (*(REF(55).tsdr)->finalize)(REF(55).value,F_DISCARD,sched);
  REF(55).value = ch_val;
  REF(55).tsdr = datarepmap[REF(37)DOT(1)DOT(0).tsdr->number];
/* insert 37.3 55 */
  if ((ch_returncode = insertfunc(DEF(37)DOT(3),DEF(55),FALSE,0)) != Normal)
     goto ch_raise_exception;
/* endblock */
  che_endblock(sched);
c140:
/* discard 55 */
  (*(REF(55).tsdr)->finalize)(REF(55).value,F_DISCARD,sched);
  REF(55).tsdr = & dr_bottom;
/* branch , 151 */
   goto c151;
c142:
/* new_record 56 , 2 */
  if ((ch_val.record = new_record(2)) == nil) goto ch_depletion;
  (*(REF(56).tsdr)->finalize)(REF(56).value,F_DISCARD,sched);
  REF(56).value = ch_val; REF(56).tsdr = & dr_record;
/* copy 56.0 37.1.0 */
  if((ch_returncode = (REF(37)DOT(1)DOT(0).tsdr->copy)(& ch_val, 
    REF(37)DOT(1)DOT(0).value)) != Normal) goto ch_raise_exception;
  (*(REF(56)DOT(0).tsdr)->finalize)(REF(56)DOT(0).value,F_DISCARD,sched);
  REF(56)DOT(0).value = ch_val;
  REF(56)DOT(0).tsdr = datarepmap[REF(37)DOT(1)DOT(0).tsdr->number];
/* new_record 57 , 3 */
  if ((ch_val.record = new_record(3)) == nil) goto ch_depletion;
  (*(REF(57).tsdr)->finalize)(REF(57).value,F_DISCARD,sched);
  REF(57).value = ch_val; REF(57).tsdr = & dr_record;
/* copy 57.0 37.0 */
  REF(57)DOT(0) = REF(37)DOT(0);
/* copy 57.1 37.1 */
  if((ch_returncode = (REF(37)DOT(1).tsdr->copy)(& ch_val, REF(37)DOT(1).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(57)DOT(1).tsdr)->finalize)(REF(57)DOT(1).value,F_DISCARD,sched);
  REF(57)DOT(1).value = ch_val;
  REF(57)DOT(1).tsdr = datarepmap[REF(37)DOT(1).tsdr->number];
/* copy 57.2 37.6 */
  if((ch_returncode = (REF(37)DOT(6).tsdr->copy)(& ch_val, REF(37)DOT(6).value
    )) != Normal) goto ch_raise_exception;
  (*(REF(57)DOT(2).tsdr)->finalize)(REF(57)DOT(2).value,F_DISCARD,sched);
  REF(57)DOT(2).value = ch_val;
  REF(57)DOT(2).tsdr = datarepmap[REF(37)DOT(6).tsdr->number];
/* unite 56.1 57 , 0 */
  if ((ch_returncode = che_unite(DEF(56)DOT(1),DEF(57),sched,0)) != Normal)
     goto ch_raise_exception;
/* insert 37.4 56 */
  if ((ch_returncode = insertfunc(DEF(37)DOT(4),DEF(56),FALSE,0)) != Normal)
     goto ch_raise_exception;
c151:
/* discard 39 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39).tsdr = & dr_bottom;
c152:
/* return 37 */
  if (ch_caller = do_return(REF(37).value)) {
    if (ch_caller->type < CProcess) ch_caller->ip++;
      sched->wakeup_proc(sched, ch_caller);}
  else rem_return(REF(37).value);
  REF(37).tsdr = & dr_bottom;
/* endblock */
  che_endblock(sched);
c155:
/* discard 37 */
  (*(REF(37).tsdr)->finalize)(REF(37).value,F_DISCARD,sched);
  REF(37).tsdr = & dr_bottom;
/* branch , 51 */
   goto c51;
c157:
/* endblock */
  che_endblock(sched);
/* branch , 176 */
   goto c176;
c159:
/* discard 0 */
  (*(REF(0).tsdr)->finalize)(REF(0).value,F_DISCARD,sched);
  REF(0).tsdr = & dr_bottom;
/* discard 4 */
  (*(REF(4).tsdr)->finalize)(REF(4).value,F_DISCARD,sched);
  REF(4).tsdr = & dr_bottom;
/* discard 8 */
  (*(REF(8).tsdr)->finalize)(REF(8).value,F_DISCARD,sched);
  REF(8).tsdr = & dr_bottom;
/* discard 11 */
  (*(REF(11).tsdr)->finalize)(REF(11).value,F_DISCARD,sched);
  REF(11).tsdr = & dr_bottom;
/* discard 14 */
  (*(REF(14).tsdr)->finalize)(REF(14).value,F_DISCARD,sched);
  REF(14).tsdr = & dr_bottom;
/* discard 17 */
  (*(REF(17).tsdr)->finalize)(REF(17).value,F_DISCARD,sched);
  REF(17).tsdr = & dr_bottom;
/* discard 20 */
  (*(REF(20).tsdr)->finalize)(REF(20).value,F_DISCARD,sched);
  REF(20).tsdr = & dr_bottom;
/* discard 23 */
  (*(REF(23).tsdr)->finalize)(REF(23).value,F_DISCARD,sched);
  REF(23).tsdr = & dr_bottom;
/* discard 26 */
  (*(REF(26).tsdr)->finalize)(REF(26).value,F_DISCARD,sched);
  REF(26).tsdr = & dr_bottom;
/* discard 29 */
  (*(REF(29).tsdr)->finalize)(REF(29).value,F_DISCARD,sched);
  REF(29).tsdr = & dr_bottom;
/* discard 32 */
  (*(REF(32).tsdr)->finalize)(REF(32).value,F_DISCARD,sched);
  REF(32).tsdr = & dr_bottom;
/* discard 33 */
  (*(REF(33).tsdr)->finalize)(REF(33).value,F_DISCARD,sched);
  REF(33).tsdr = & dr_bottom;
/* discard 34 */
  (*(REF(34).tsdr)->finalize)(REF(34).value,F_DISCARD,sched);
  REF(34).tsdr = & dr_bottom;
/* discard 35 */
  (*(REF(35).tsdr)->finalize)(REF(35).value,F_DISCARD,sched);
  REF(35).tsdr = & dr_bottom;
/* discard 36 */
  (*(REF(36).tsdr)->finalize)(REF(36).value,F_DISCARD,sched);
  REF(36).tsdr = & dr_bottom;
/* discard 37 */
  (*(REF(37).tsdr)->finalize)(REF(37).value,F_DISCARD,sched);
  REF(37).tsdr = & dr_bottom;
/* discard 39 */
  (*(REF(39).tsdr)->finalize)(REF(39).value,F_DISCARD,sched);
  REF(39).tsdr = & dr_bottom;
c176:
/* discard 8 */
  (*(REF(8).tsdr)->finalize)(REF(8).value,F_DISCARD,sched);
  REF(8).tsdr = & dr_bottom;
/* discard 11 */
  (*(REF(11).tsdr)->finalize)(REF(11).value,F_DISCARD,sched);
  REF(11).tsdr = & dr_bottom;
/* discard 14 */
  (*(REF(14).tsdr)->finalize)(REF(14).value,F_DISCARD,sched);
  REF(14).tsdr = & dr_bottom;
/* discard 17 */
  (*(REF(17).tsdr)->finalize)(REF(17).value,F_DISCARD,sched);
  REF(17).tsdr = & dr_bottom;
/* discard 20 */
  (*(REF(20).tsdr)->finalize)(REF(20).value,F_DISCARD,sched);
  REF(20).tsdr = & dr_bottom;
/* discard 23 */
  (*(REF(23).tsdr)->finalize)(REF(23).value,F_DISCARD,sched);
  REF(23).tsdr = & dr_bottom;
/* discard 26 */
  (*(REF(26).tsdr)->finalize)(REF(26).value,F_DISCARD,sched);
  REF(26).tsdr = & dr_bottom;
/* discard 29 */
  (*(REF(29).tsdr)->finalize)(REF(29).value,F_DISCARD,sched);
  REF(29).tsdr = & dr_bottom;
/* discard 32 */
  (*(REF(32).tsdr)->finalize)(REF(32).value,F_DISCARD,sched);
  REF(32).tsdr = & dr_bottom;
/* discard 33 */
  (*(REF(33).tsdr)->finalize)(REF(33).value,F_DISCARD,sched);
  REF(33).tsdr = & dr_bottom;
/* discard 34 */
  (*(REF(34).tsdr)->finalize)(REF(34).value,F_DISCARD,sched);
  REF(34).tsdr = & dr_bottom;
/* discard 35 */
  (*(REF(35).tsdr)->finalize)(REF(35).value,F_DISCARD,sched);
  REF(35).tsdr = & dr_bottom;
/* discard 36 */
  (*(REF(36).tsdr)->finalize)(REF(36).value,F_DISCARD,sched);
  REF(36).tsdr = & dr_bottom;
/* endblock */
  che_endblock(sched);
c191:
/* endprocess */
  che_endprocess(sched); return;
#include "chtail.h"
