DIRECTORY
SiroccoAG2Def,
SiroccoAG1Def,
Rope,
SiroccoCGDef,
ThreeC4Support,
SiroccoATDef;

SiroccoCGImpl: CEDAR PROGRAM IMPORTS SiroccoAG2Def, SiroccoAG1Def, Rope EXPORTS SiroccoCGDef= 
BEGIN
OPEN SiroccoAG2Def, SiroccoAG1Def, Rope, SiroccoCGDef, ThreeC4Support, SiroccoATDef;
SiroccoCGLinkProc: PUBLIC PROC[prodLinkArray: SeeProdLinkArray, tknLinkArray: TokenLinkArray] =
BEGIN
tknLinkArray[tokenID] _ BuildidNode;
tknLinkArray[tokenDECIMAL] _ BuilddecimalNode;
tknLinkArray[tokenHEX] _ BuildhexNode;
tknLinkArray[tokenOCTAL] _ BuildoctalNode;
tknLinkArray[tokenROPE] _ BuildropeNode;
prodLinkArray[0] _ Seeexport;
prodLinkArray[1] _ Seeprogram;
prodLinkArray[2] _ Seedependencyempty;
prodLinkArray[3] _ Seedependencyimports;
prodLinkArray[4] _ Seeimportlistone;
prodLinkArray[5] _ Seeimportlistmore;
prodLinkArray[6] _ Seeimport;
prodLinkArray[7] _ Seedeclarationlista;
prodLinkArray[8] _ Seedeclarationlistb;
prodLinkArray[9] _ Seedeclarationtype;
prodLinkArray[10] _ Seedeclarationconstant;
prodLinkArray[11] _ Seedeclarationid;
prodLinkArray[12] _ Seetypesimple;
prodLinkArray[13] _ Seetypeconstruction;
prodLinkArray[14] _ Seesimpletypereference;
prodLinkArray[15] _ Seesimpletypeprimitive;
prodLinkArray[16] _ Seereferencealias;
prodLinkArray[17] _ Seereferenceimport;
prodLinkArray[18] _ Seeprimitivebool;
prodLinkArray[19] _ Seeprimitivecard16;
prodLinkArray[20] _ Seeprimitivecard32;
prodLinkArray[21] _ Seeprimitiveint16;
prodLinkArray[22] _ Seeprimitiveint32;
prodLinkArray[23] _ Seeprimitivesink;
prodLinkArray[24] _ Seeprimitivesource;
prodLinkArray[25] _ Seeprimitivestring;
prodLinkArray[26] _ Seeprimitiveunspec;
prodLinkArray[27] _ Seeconstructionarray;
prodLinkArray[28] _ Seeconstructionchoice;
prodLinkArray[29] _ Seeconstructionenum;
prodLinkArray[30] _ Seeconstructionerror;
prodLinkArray[31] _ Seeconstructionproc;
prodLinkArray[32] _ Seeconstructionrecord;
prodLinkArray[33] _ Seeconstructionnull;
prodLinkArray[34] _ Seeconstructionseq;
prodLinkArray[35] _ Seeconstantvalue;
prodLinkArray[36] _ Seeconstantcomplex;
prodLinkArray[37] _ Seeconstantchoiceconstant;
prodLinkArray[38] _ Seeconstantchoiceid;
prodLinkArray[39] _ Seeconstantimport;
prodLinkArray[40] _ Seevaluetrue;
prodLinkArray[41] _ Seevaluefalse;
prodLinkArray[42] _ Seevaluenumber;
prodLinkArray[43] _ Seevalueinverted;
prodLinkArray[44] _ Seevaluestring;
prodLinkArray[45] _ Seecomplexvaluegrouping;
prodLinkArray[46] _ Seecomplexvalueconstructor;
prodLinkArray[47] _ Seecomplexvaluenull;
prodLinkArray[48] _ Seeoptionalnonempty;
prodLinkArray[49] _ Seeoptionalalias;
prodLinkArray[50] _ Seeoptionalempty;
prodLinkArray[51] _ Seemandatoryvalue;
prodLinkArray[52] _ Seemandatoryalias;
prodLinkArray[53] _ Seeenumerationone;
prodLinkArray[54] _ Seeenumerationmore;
prodLinkArray[55] _ Seekeyindexpair;
prodLinkArray[56] _ Seeunionone;
prodLinkArray[57] _ Seeunionmore;
prodLinkArray[58] _ Seeselectorone;
prodLinkArray[59] _ Seeselectortwo;
prodLinkArray[60] _ Seefieldlistfield;
prodLinkArray[61] _ Seefieldlistmore;
prodLinkArray[62] _ Seefield;
prodLinkArray[63] _ Seegroupingconst;
prodLinkArray[64] _ Seegroupingid;
prodLinkArray[65] _ Seegroupingcmore;
prodLinkArray[66] _ Seegroupingimore;
prodLinkArray[67] _ Seeconstructorone;
prodLinkArray[68] _ Seeconstructormore;
prodLinkArray[69] _ Seebindingid;
prodLinkArray[70] _ Seebindingconst;
prodLinkArray[71] _ Seeargumentsempty;
prodLinkArray[72] _ Seeargumentslist;
prodLinkArray[73] _ Seeargumentsnull;
prodLinkArray[74] _ Seeresultsempty;
prodLinkArray[75] _ Seeresultslist;
prodLinkArray[76] _ Seeresultsnull;
prodLinkArray[77] _ Seeerrorsempty;
prodLinkArray[78] _ Seeerrorslist;
prodLinkArray[79] _ Seenamelistone;
prodLinkArray[80] _ Seenamelistmore;
prodLinkArray[81] _ Seenumberdecimal;
prodLinkArray[82] _ Seenumberoctal;
prodLinkArray[83] _ Seenumberhex;
END;



BuildidNode: PUBLIC PROC[text: Rope.ROPE, firstCharPosition: INT] RETURNS[idNode] =
{RETURN[NEW[idNodeBody_[text, firstCharPosition, Length[text]]]]};



BuilddecimalNode: PUBLIC PROC[text: Rope.ROPE, firstCharPosition: INT] RETURNS[decimalNode] =
{RETURN[NEW[decimalNodeBody_[text, firstCharPosition, Length[text]]]]};



BuildhexNode: PUBLIC PROC[text: Rope.ROPE, firstCharPosition: INT] RETURNS[hexNode] =
{RETURN[NEW[hexNodeBody_[text, firstCharPosition, Length[text]]]]};



BuildoctalNode: PUBLIC PROC[text: Rope.ROPE, firstCharPosition: INT] RETURNS[octalNode] =
{RETURN[NEW[octalNodeBody_[text, firstCharPosition, Length[text]]]]};



BuildropeNode: PUBLIC PROC[text: Rope.ROPE, firstCharPosition: INT] RETURNS[ropeNode] =
{RETURN[NEW[ropeNodeBody_[text, firstCharPosition, Length[text]]]]};

Seeexport: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
program: ProgramNode;
program _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[program, stack];
RETURN [stack]
END;

Seeprogram: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
decimalpgm: decimalNode;
decimalversion: decimalNode;
dependency: ImportListNode;
declarationlist: DeclarationListNode;
declarationlist _ NARROW[stack.first];
stack _ stack.rest;
dependency _ NARROW[stack.first];
stack _ stack.rest;
decimalversion _ NARROW[stack.first];
stack _ stack.rest;
decimalpgm _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildProgramexportProdNode[position, length, id, decimalpgm, decimalversion, dependency, declarationlist], stack];
RETURN [stack]
END;

Seedependencyempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildImportListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seedependencyimports: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
importlist: ImportListNode;
importlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[importlist, stack];
RETURN [stack]
END;

Seeimportlistone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
import: ImportNode;
import _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildImportListmoreProdNode[position, length, BuildImportListemptyProdNode[import.position, import.position - import.length], import], stack];
RETURN [stack]
END;

Seeimportlistmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
importlist: ImportListNode;
import: ImportNode;
import _ NARROW[stack.first];
stack _ stack.rest;
importlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildImportListmoreProdNode[position, length, importlist, import], stack];
RETURN [stack]
END;

Seeimport: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
decimalpgm: decimalNode;
decimalversion: decimalNode;
decimalversion _ NARROW[stack.first];
stack _ stack.rest;
decimalpgm _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildImportinterfaceProdNode[position, length, id, decimalpgm, decimalversion], stack];
RETURN [stack]
END;

Seedeclarationlista: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildDeclarationListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seedeclarationlistb: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
declarationlist: DeclarationListNode;
declaration: DeclarationNode;
declaration _ NARROW[stack.first];
stack _ stack.rest;
declarationlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildDeclarationListmoreProdNode[position, length, declarationlist, declaration], stack];
RETURN [stack]
END;

Seedeclarationtype: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
type: TypeNode;
type _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildDeclarationtypeProdNode[position, length, id, type], stack];
RETURN [stack]
END;

Seedeclarationconstant: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
type: TypeNode;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
type _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildDeclarationconstantProdNode[position, length, id, type, constant], stack];
RETURN [stack]
END;

Seedeclarationid: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
idname: idNode;
type: TypeNode;
idconstant: idNode;
idconstant _ NARROW[stack.first];
stack _ stack.rest;
type _ NARROW[stack.first];
stack _ stack.rest;
idname _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildDeclarationconstantProdNode[position, length, idname, type, BuildConstantderefProdNode[idconstant.position, idconstant.length, idconstant]], stack];
RETURN [stack]
END;

Seetypesimple: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[simpletype, stack];
RETURN [stack]
END;

Seetypeconstruction: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
construction: TypeNode;
construction _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[construction, stack];
RETURN [stack]
END;

Seesimpletypereference: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
reference: TypeNode;
reference _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[reference, stack];
RETURN [stack]
END;

Seesimpletypeprimitive: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
primitive: TypeNode;
primitive _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[primitive, stack];
RETURN [stack]
END;

Seereferencealias: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypealiasProdNode[position, length, id], stack];
RETURN [stack]
END;

Seereferenceimport: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
idinterface: idNode;
iditem: idNode;
iditem _ NARROW[stack.first];
stack _ stack.rest;
idinterface _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypeimportProdNode[position, length, idinterface, iditem], stack];
RETURN [stack]
END;

Seeprimitivebool: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypeboolProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitivecard16: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypecard16ProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitivecard32: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypecard32ProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitiveint16: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypeint16ProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitiveint32: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypeint32ProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitivesink: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypesinkProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitivesource: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypesourceProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitivestring: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypestringProdNode[position, length], stack];
RETURN [stack]
END;

Seeprimitiveunspec: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypeunspecProdNode[position, length], stack];
RETURN [stack]
END;

Seeconstructionarray: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
mandatory: ConstantNode;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
mandatory _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypearrayProdNode[position, length, mandatory, simpletype], stack];
RETURN [stack]
END;

Seeconstructionchoice: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
reference: TypeNode;
union: UnionNode;
union _ NARROW[stack.first];
stack _ stack.rest;
reference _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypechoiceProdNode[position, length, reference, union], stack];
RETURN [stack]
END;

Seeconstructionenum: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
enumeration: EnumerationNode;
enumeration _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypeenumProdNode[position, length, enumeration], stack];
RETURN [stack]
END;

Seeconstructionerror: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
arguments: FieldListNode;
arguments _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypeerrorProdNode[position, length, arguments], stack];
RETURN [stack]
END;

Seeconstructionproc: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
arguments: FieldListNode;
results: FieldListNode;
errors: NameListNode;
errors _ NARROW[stack.first];
stack _ stack.rest;
results _ NARROW[stack.first];
stack _ stack.rest;
arguments _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypeprocProdNode[position, length, arguments, results, errors], stack];
RETURN [stack]
END;

Seeconstructionrecord: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
fieldlist: FieldListNode;
fieldlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTyperecordProdNode[position, length, fieldlist], stack];
RETURN [stack]
END;

Seeconstructionnull: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildTypenullProdNode[position, length], stack];
RETURN [stack]
END;

Seeconstructionseq: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
optional: ConstantNode;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
optional _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildTypeseqProdNode[position, length, optional, simpletype], stack];
RETURN [stack]
END;

Seeconstantvalue: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
value: ConstantNode;
value _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[value, stack];
RETURN [stack]
END;

Seeconstantcomplex: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
complexvalue: ConstantNode;
complexvalue _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[complexvalue, stack];
RETURN [stack]
END;

Seeconstantchoiceconstant: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantchoiceProdNode[position, length, id, constant], stack];
RETURN [stack]
END;

Seeconstantchoiceid: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
idchoice: idNode;
idvalue: idNode;
idvalue _ NARROW[stack.first];
stack _ stack.rest;
idchoice _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantchoiceProdNode[position, length, idchoice, BuildConstantderefProdNode[idvalue.position, idvalue.length, idvalue]], stack];
RETURN [stack]
END;

Seeconstantimport: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
idinterface: idNode;
iditem: idNode;
iditem _ NARROW[stack.first];
stack _ stack.rest;
idinterface _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantimportProdNode[position, length, idinterface, iditem], stack];
RETURN [stack]
END;

Seevaluetrue: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildConstanttrueProdNode[position, length], stack];
RETURN [stack]
END;

Seevaluefalse: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildConstantfalseProdNode[position, length], stack];
RETURN [stack]
END;

Seevaluenumber: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
number: NumberNode;
number _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantnumberProdNode[position, length, number], stack];
RETURN [stack]
END;

Seevalueinverted: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
number: NumberNode;
number _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantinvertedProdNode[position, length, number], stack];
RETURN [stack]
END;

Seevaluestring: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
rope: ropeNode;
rope _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantstringProdNode[position, length, rope], stack];
RETURN [stack]
END;

Seecomplexvaluegrouping: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
grouping: GroupingNode;
grouping _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantgroupingProdNode[position, length, grouping], stack];
RETURN [stack]
END;

Seecomplexvalueconstructor: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
constructor: ConstructorNode;
constructor _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantconstructorProdNode[position, length, constructor], stack];
RETURN [stack]
END;

Seecomplexvaluenull: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildConstantemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeoptionalnonempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[constant, stack];
RETURN [stack]
END;

Seeoptionalalias: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantderefProdNode[position, length, id], stack];
RETURN [stack]
END;

Seeoptionalempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildConstantunboundedProdNode[position, length], stack];
RETURN [stack]
END;

Seemandatoryvalue: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[constant, stack];
RETURN [stack]
END;

Seemandatoryalias: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstantderefProdNode[position, length, id], stack];
RETURN [stack]
END;

Seeenumerationone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
keyindexpair: EnumerationNode;
keyindexpair _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[keyindexpair, stack];
RETURN [stack]
END;

Seeenumerationmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
keyindexpair: EnumerationNode;
enumeration: EnumerationNode;
enumeration _ NARROW[stack.first];
stack _ stack.rest;
keyindexpair _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildEnumerationmoreProdNode[position, length, keyindexpair, enumeration], stack];
RETURN [stack]
END;

Seekeyindexpair: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
mandatory: ConstantNode;
mandatory _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildEnumerationoneProdNode[position, length, id, mandatory], stack];
RETURN [stack]
END;

Seeunionone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
selector: UnionNode;
selector _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[selector, stack];
RETURN [stack]
END;

Seeunionmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
selector: UnionNode;
union: UnionNode;
union _ NARROW[stack.first];
stack _ stack.rest;
selector _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildUnionmoreProdNode[position, length, selector, union], stack];
RETURN [stack]
END;

Seeselectorone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildUniononeProdNode[position, length, namelist, simpletype], stack];
RETURN [stack]
END;

Seeselectortwo: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
number: NumberNode;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
number _ NARROW[stack.first];
stack _ stack.rest;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildUniononeProdNode[position, length, namelist, simpletype], stack];
RETURN [stack]
END;

Seefieldlistfield: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
field: FieldListNode;
field _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildFieldListmoreProdNode[position, length, field, BuildFieldListemptyProdNode[field.position, field.position - field.length]], stack];
RETURN [stack]
END;

Seefieldlistmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
field: FieldListNode;
fieldlist: FieldListNode;
fieldlist _ NARROW[stack.first];
stack _ stack.rest;
field _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildFieldListmoreProdNode[position, length, field, fieldlist], stack];
RETURN [stack]
END;

Seefield: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
simpletype: TypeNode;
simpletype _ NARROW[stack.first];
stack _ stack.rest;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildFieldListoneProdNode[position, length, namelist, simpletype], stack];
RETURN [stack]
END;

Seegroupingconst: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildGroupingoneProdNode[position, length, constant], stack];
RETURN [stack]
END;

Seegroupingid: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildGroupingoneProdNode[position, length, BuildConstantderefProdNode[id.position, id.length, id]], stack];
RETURN [stack]
END;

Seegroupingcmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
constant: ConstantNode;
grouping: GroupingNode;
grouping _ NARROW[stack.first];
stack _ stack.rest;
constant _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildGroupingmoreProdNode[position, length, constant, grouping], stack];
RETURN [stack]
END;

Seegroupingimore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
grouping: GroupingNode;
grouping _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildGroupingmoreProdNode[position, length, BuildConstantderefProdNode[id.position, id.length, id], grouping], stack];
RETURN [stack]
END;

Seeconstructorone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
binding: BindingNode;
binding _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstructoroneProdNode[position, length, binding], stack];
RETURN [stack]
END;

Seeconstructormore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
binding: BindingNode;
constructor: ConstructorNode;
constructor _ NARROW[stack.first];
stack _ stack.rest;
binding _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildConstructormoreProdNode[position, length, binding, constructor], stack];
RETURN [stack]
END;

Seebindingid: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildBindingProdNode[position, length, namelist, BuildConstantderefProdNode[id.position, id.length, id]], stack];
RETURN [stack]
END;

Seebindingconst: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
constant: ConstantNode;
constant _ NARROW[stack.first];
stack _ stack.rest;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildBindingProdNode[position, length, namelist, constant], stack];
RETURN [stack]
END;

Seeargumentsempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildFieldListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeargumentslist: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
fieldlist: FieldListNode;
fieldlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[fieldlist, stack];
RETURN [stack]
END;

Seeargumentsnull: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildFieldListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeresultsempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildFieldListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeresultslist: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
fieldlist: FieldListNode;
fieldlist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[fieldlist, stack];
RETURN [stack]
END;

Seeresultsnull: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildFieldListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeerrorsempty: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
stack _ CONS[BuildNameListemptyProdNode[position, length], stack];
RETURN [stack]
END;

Seeerrorslist: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
namelist: NameListNode;
namelist _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[namelist, stack];
RETURN [stack]
END;

Seenamelistone: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildNameListoneProdNode[position, length, id], stack];
RETURN [stack]
END;

Seenamelistmore: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
id: idNode;
namelist: NameListNode;
namelist _ NARROW[stack.first];
stack _ stack.rest;
id _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildNameListmoreProdNode[position, length, id, namelist], stack];
RETURN [stack]
END;

Seenumberdecimal: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
decimal: decimalNode;
decimal _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildNumberdecimalProdNode[position, length, decimal], stack];
RETURN [stack]
END;

Seenumberoctal: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
octal: octalNode;
octal _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildNumberoctalProdNode[position, length, octal], stack];
RETURN [stack]
END;

Seenumberhex: PROC [nodes: LIST OF REF ANY, position: INT, length: INT]
RETURNS [LIST OF REF ANY] =
BEGIN
stack: LIST OF REF ANY _ nodes;
hex: hexNode;
hex _ NARROW[stack.first];
stack _ stack.rest;
stack _ CONS[BuildNumberhexProdNode[position, length, hex], stack];
RETURN [stack]
END;

END..

�����SiroccoCGImpl.mesa
Copyright Ó 1987 by Xerox Corporation.  All rights reserved.
Generated by BJackson.pa at August 26, 1987 3:38:04 pm PDT
using ThreeCasabaFour [1.2] of June 1, 1987 6:00:00 pm PDT
id
decimal
hex
octal
rope
Ê2��˜�šœ™Jšœ<™<Jšœ:™:Jšœ:™:—J˜�šÏk	˜	J˜J˜J˜J˜
J˜J˜
—J˜�Jš
Ïn
œœœœ$œ˜^Jš˜JšœP˜TJšžœœœA˜_Jš˜J˜$J˜.J˜&J˜*J˜(J˜J˜J˜&J˜(J˜$J˜%J˜J˜'J˜'J˜&J˜+J˜%J˜"J˜(J˜+J˜+J˜&J˜'J˜%J˜'J˜'J˜&J˜&J˜%J˜'J˜'J˜'J˜)J˜*J˜(J˜)J˜(J˜*J˜(J˜'J˜%J˜'J˜.J˜(J˜&J˜!J˜"J˜#J˜%J˜#J˜,J˜/J˜(J˜(J˜%J˜%J˜&J˜&J˜&J˜'J˜$J˜ J˜!J˜#J˜#J˜&J˜%J˜J˜%J˜"J˜%J˜%J˜&J˜'J˜!J˜$J˜&J˜%J˜%J˜$J˜#J˜#J˜#J˜"J˜#J˜$J˜%J˜#J˜!Jšœ˜J˜�J˜�Jšœ™J˜�šžœœœœœœ
˜SJšœœœ7˜B—J˜�J˜�Jšœ™J˜�šžœœœœœœ˜]Jšœœœ<˜G—J˜�J˜�Jšœ™J˜�šžœœœœœœ˜UJšœœœ8˜C—J˜�J˜�Jšœ™J˜�šžœœœœœœ
˜YJšœœœ:˜E—J˜�J˜�Jšœ™J˜�šž
œœœœœœ˜WJšœœœ9˜D—J˜�šž	œœ	œœœœœ
œ˜DJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ
œ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šž
œœ	œœœœœ
œ˜EJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜J˜J˜%Jšœœ˜&J˜Jšœ
œ˜!J˜Jšœœ˜%J˜Jšœ
œ˜!J˜Jšœœ˜J˜Jšœœs˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ8˜DJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜OJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ
œ˜!J˜Jšœœ˜ Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ	œ˜J˜Jšœœ˜›Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ	œ˜J˜Jšœ
œ˜!J˜JšœœK˜WJšœ˜Jšœ˜J˜�šž	œœ	œœœœœ
œ˜DJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜Jšœœ˜%J˜Jšœ
œ˜!J˜Jšœœ˜J˜JšœœX˜dJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ=˜IJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜%J˜Jšœœ˜"J˜Jšœœ˜&J˜JšœœZ˜fJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœB˜NJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜QJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœP˜\Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜Jšœ
œ˜!J˜Jšœœ˜J˜Jšœ	œ˜J˜Jšœœš˜¦Jšœ˜Jšœ˜J˜�šž
œœ	œœœœœ
œ˜HJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ
œ˜!J˜Jšœœ˜ Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜#J˜Jšœœ˜"Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜QJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜QJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ6˜BJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ	œ˜J˜Jšœœ˜"J˜JšœœH˜TJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ1˜=Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ3˜?Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ3˜?Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ2˜>Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ2˜>Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ1˜=Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ3˜?Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ3˜?Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ3˜?Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜OJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ
œ˜!J˜Jšœœ˜ J˜JšœœI˜UJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜PJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜ J˜JšœœE˜QJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜"J˜Jšœœ>˜JJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜OJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ=˜IJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜Jšœ	œ˜J˜Jšœ
œ˜J˜Jšœœ˜ J˜JšœœM˜YJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜PJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ>˜JJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ1˜=Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ
œ˜!J˜Jšœœ˜J˜JšœœF˜RJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜#J˜Jšœœ˜"Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜TJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœE˜QJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ
œ˜J˜Jšœœ˜J˜Jšœœˆ˜”Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ	œ˜J˜Jšœœ˜"J˜JšœœL˜XJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜GJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ5˜AJšœ˜Jšœ˜J˜�šž
œœ	œœœœœ
œ˜HJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ6˜BJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ	œ˜J˜Jšœœ?˜KJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ	œ˜J˜JšœœA˜MJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ=˜IJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜RJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜JšœœC˜OJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜UJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜"J˜JšœœI˜UJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ6˜BJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜NJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ:˜FJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ:˜FJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ:˜FJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜#J˜Jšœœ˜"Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜"J˜Jšœœ˜#J˜JšœœS˜_Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜JJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜ J˜Jšœœ˜J˜JšœœF˜RJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜FJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜GJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœC˜OJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ
œ˜!J˜Jšœœ˜J˜JšœœG˜SJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜J˜Jšœ
œ˜!J˜Jšœ	œ˜J˜Jšœœ˜J˜JšœœG˜SJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ‰˜•Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜ J˜Jšœœ˜J˜JšœœH˜TJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜CJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœ
œ˜!J˜Jšœœ˜J˜JšœœK˜WJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ>˜JJšœ˜Jšœ˜J˜�šž
œœ	œœœœœ
œ˜HJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœl˜xJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœI˜UJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜Jšœœw˜ƒJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ
œ˜J˜Jšœœ@˜LJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜MJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜"J˜Jšœ
œ˜J˜JšœœN˜ZJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜GJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜Jšœœr˜~Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜JJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœD˜PJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜LJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ7˜CJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ7˜CJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜JJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ7˜CJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜ J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ7˜CJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜Jšœœ6˜BJšœ˜Jšœ˜J˜�šž
œœ	œœœœœ
œ˜HJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ˜Jšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ8˜DJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜JJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜J˜Jšœœ˜J˜Jšœœ˜J˜JšœœC˜OJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜KJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœ
œ˜J˜Jšœœ?˜KJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜IJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜Jšœœ˜J˜Jšœœ;˜GJšœ˜Jšœ˜J˜�šžœœ	œœœœœ
œ˜GJš
œœœœœ˜—Jš˜Jš	œœœœœ	˜J˜
Jšœœ˜J˜Jšœœ7˜CJšœ˜Jšœ˜J˜�Jšœ˜J˜�—�…—����|†��¯ù��