

#ifndef ADenotation_included
#define ADenotation_included

#define __ADenotation_Ainit __ADenotation_1
#define _ADenotation_Ainit _ADenotation_1
#define ADenotation_1 ADenotation_Ainit
extern OBJ __ADenotation_Ainit;
extern OBJ _ADenotation_Ainit(OBJ,OBJ);

#define __ADenotation_Ainit_O1 __ADenotation_2
#define _ADenotation_Ainit_O1 _ADenotation_2
#define ADenotation_2 ADenotation_Ainit_O1
extern OBJ __ADenotation_Ainit_O1;
extern OBJ _ADenotation_Ainit_O1(OBJ,OBJ);

#define __ADenotation_Aempty __ADenotation_3
extern OBJ __ADenotation_Aempty;

#define __ADenotation_Spp __ADenotation_4
#define _ADenotation_Spp _ADenotation_4
#define ADenotation_4 ADenotation_Spp
extern OBJ __ADenotation_Spp;
extern OBJ _ADenotation_Spp(OBJ,OBJ);

#define __ADenotation_Spsp __ADenotation_5
#define _ADenotation_Spsp _ADenotation_5
#define ADenotation_5 ADenotation_Spsp
extern OBJ __ADenotation_Spsp;
extern OBJ _ADenotation_Spsp(OBJ,OBJ,OBJ);

#define __ADenotation_Spsp_O1 __ADenotation_6
#define _ADenotation_Spsp_O1 _ADenotation_6
#define ADenotation_6 ADenotation_Spsp_O1
extern OBJ __ADenotation_Spsp_O1;
extern OBJ _ADenotation_Spsp_O1(OBJ,OBJ,OBJ);

#define __ADenotation_Sp5p __ADenotation_7
#define _ADenotation_Sp5p _ADenotation_7
#define ADenotation_7 ADenotation_Sp5p
extern OBJ __ADenotation_Sp5p;
extern OBJ _ADenotation_Sp5p(OBJ,OBJ,OBJ);

#define __ADenotation_Sp5p_O1 __ADenotation_8
#define _ADenotation_Sp5p_O1 _ADenotation_8
#define ADenotation_8 ADenotation_Sp5p_O1
extern OBJ __ADenotation_Sp5p_O1;
extern OBJ _ADenotation_Sp5p_O1(OBJ,OBJ,OBJ);

#define __ADenotation_Sie __ADenotation_9
#define _ADenotation_Sie _ADenotation_9
#define ADenotation_9 ADenotation_Sie
extern OBJ __ADenotation_Sie;
extern OBJ _ADenotation_Sie(OBJ,OBJ,OBJ);

#define __ADenotation_Aupd __ADenotation_10
#define _ADenotation_Aupd _ADenotation_10
#define ADenotation_10 ADenotation_Aupd
extern OBJ __ADenotation_Aupd;
extern OBJ _ADenotation_Aupd(OBJ,OBJ,OBJ);

#define __ADenotation_Aslice __ADenotation_11
#define _ADenotation_Aslice _ADenotation_11
#define ADenotation_11 ADenotation_Aslice
extern OBJ __ADenotation_Aslice;
extern OBJ _ADenotation_Aslice(OBJ,OBJ,OBJ);

#define __ADenotation_Adelete __ADenotation_12
#define _ADenotation_Adelete _ADenotation_12
#define ADenotation_12 ADenotation_Adelete
extern OBJ __ADenotation_Adelete;
extern OBJ _ADenotation_Adelete(OBJ,OBJ,OBJ);

#define __ADenotation_Ainsert __ADenotation_13
#define _ADenotation_Ainsert _ADenotation_13
#define ADenotation_13 ADenotation_Ainsert
extern OBJ __ADenotation_Ainsert;
extern OBJ _ADenotation_Ainsert(OBJ,OBJ,OBJ);

#define __ADenotation_S1 __ADenotation_14
#define _ADenotation_S1 _ADenotation_14
#define ADenotation_14 ADenotation_S1
extern OBJ __ADenotation_S1;
extern OBJ _ADenotation_S1(OBJ,OBJ);

#define __ADenotation_S3 __ADenotation_15
#define _ADenotation_S3 _ADenotation_15
#define ADenotation_15 ADenotation_S3
extern OBJ __ADenotation_S3;
extern OBJ _ADenotation_S3(OBJ);

#define __ADenotation_Aempty_ __ADenotation_16
#define _ADenotation_Aempty_ _ADenotation_16
#define ADenotation_16 ADenotation_Aempty_
extern OBJ __ADenotation_Aempty_;
extern OBJ _ADenotation_Aempty_(OBJ);

#define __ADenotation_Sl __ADenotation_17
#define _ADenotation_Sl _ADenotation_17
#define ADenotation_17 ADenotation_Sl
extern OBJ __ADenotation_Sl;
extern OBJ _ADenotation_Sl(OBJ,OBJ);

#define __ADenotation_Sle __ADenotation_18
#define _ADenotation_Sle _ADenotation_18
#define ADenotation_18 ADenotation_Sle
extern OBJ __ADenotation_Sle;
extern OBJ _ADenotation_Sle(OBJ,OBJ);

#define __ADenotation_Sge __ADenotation_19
#define _ADenotation_Sge _ADenotation_19
#define ADenotation_19 ADenotation_Sge
extern OBJ __ADenotation_Sge;
extern OBJ _ADenotation_Sge(OBJ,OBJ);

#define __ADenotation_Sg __ADenotation_20
#define _ADenotation_Sg _ADenotation_20
#define ADenotation_20 ADenotation_Sg
extern OBJ __ADenotation_Sg;
extern OBJ _ADenotation_Sg(OBJ,OBJ);

#define __ADenotation_Se __ADenotation_21
#define _ADenotation_Se _ADenotation_21
#define ADenotation_21 ADenotation_Se
extern OBJ __ADenotation_Se;
extern OBJ _ADenotation_Se(OBJ,OBJ);

#define __ADenotation_SSe __ADenotation_22
#define _ADenotation_SSe _ADenotation_22
#define ADenotation_22 ADenotation_SSe
extern OBJ __ADenotation_SSe;
extern OBJ _ADenotation_SSe(OBJ,OBJ);

#define __ADenotation_S5 __ADenotation_23
#define _ADenotation_S5 _ADenotation_23
#define ADenotation_23 ADenotation_S5
extern OBJ __ADenotation_S5;
extern OBJ _ADenotation_S5(OBJ);

#define __ADenotation_S1_O1 __ADenotation_24
#define _ADenotation_S1_O1 _ADenotation_24
#define ADenotation_24 ADenotation_S1_O1
extern OBJ __ADenotation_S1_O1;
extern OBJ _ADenotation_S1_O1(OBJ);

#define __ADenotation_AuncheckedUpd __ADenotation_25
#define _ADenotation_AuncheckedUpd _ADenotation_25
#define ADenotation_25 ADenotation_AuncheckedUpd
extern OBJ __ADenotation_AuncheckedUpd;
extern OBJ _ADenotation_AuncheckedUpd(OBJ,OBJ,OBJ);

#define __ADenotation_AuncheckedSel __ADenotation_26
#define _ADenotation_AuncheckedSel _ADenotation_26
#define ADenotation_26 ADenotation_AuncheckedSel
extern OBJ __ADenotation_AuncheckedSel;
extern OBJ _ADenotation_AuncheckedSel(OBJ,OBJ);

#define __ADenotation_Acompare __ADenotation_29
#define _ADenotation_Acompare _ADenotation_29
#define ADenotation_29 ADenotation_Acompare
extern OBJ __ADenotation_Acompare;
extern OBJ _ADenotation_Acompare(OBJ,OBJ);

#define __ADenotation_S5_L30 __ADenotation_30
#define _ADenotation_S5_L30 _ADenotation_30
#define ADenotation_30 ADenotation_S5_L30
extern OBJ __ADenotation_S5_L30;
extern OBJ _ADenotation_S5_L30(OBJ);

#include "Denotation.hc.h"

#ifndef ADenotation_Ainit
#define ADenotation_Ainit(x1,x2,x3) {x3=_ADenotation_Ainit(x1,x2);}
#endif

#ifndef ADenotation_Ainit_O1
#define ADenotation_Ainit_O1(x1,x2,x3) {x3=_ADenotation_Ainit_O1(x1,x2);}
#endif

#ifndef ADenotation_Spp
#define ADenotation_Spp(x1,x2,x3) {x3=_ADenotation_Spp(x1,x2);}
#endif

#ifndef ADenotation_Spsp
#define ADenotation_Spsp(x1,x2,x3,x10) {x10=_ADenotation_Spsp(x1,x2,x3);}
#endif

#ifndef ADenotation_Spsp_O1
#define ADenotation_Spsp_O1(x1,x2,x3,x9) {x9=_ADenotation_Spsp_O1(x1,x2,x3);}
#endif

#ifndef ADenotation_Sp5p
#define ADenotation_Sp5p(x1,x2,x3,x6) {x6=_ADenotation_Sp5p(x1,x2,x3);}
#endif

#ifndef ADenotation_Sp5p_O1
#define ADenotation_Sp5p_O1(x1,x2,x3,x5) {x5=_ADenotation_Sp5p_O1(x1,x2,x3);}
#endif

#ifndef ADenotation_Sie
#define ADenotation_Sie(x1,x2,x3,x6) {x6=_ADenotation_Sie(x1,x2,x3);}
#endif

#ifndef ADenotation_Aupd
#define ADenotation_Aupd(x1,x2,x3,x6) {x6=_ADenotation_Aupd(x1,x2,x3);}
#endif

#ifndef ADenotation_Aslice
#define ADenotation_Aslice(x1,x2,x3,x4) {x4=_ADenotation_Aslice(x1,x2,x3);}
#endif

#ifndef ADenotation_Adelete
#define ADenotation_Adelete(x1,x2,x3,x4) {x4=_ADenotation_Adelete(x1,x2,x3);}
#endif

#ifndef ADenotation_Ainsert
#define ADenotation_Ainsert(x1,x2,x3,x4) {x4=_ADenotation_Ainsert(x1,x2,x3);}
#endif

#ifndef ADenotation_S1
#define ADenotation_S1(x1,x2,x6) {x6=_ADenotation_S1(x1,x2);}
#endif

#ifndef ADenotation_S3
#define ADenotation_S3(x1,x2) {x2=_ADenotation_S3(x1);}
#endif

#ifndef ADenotation_Aempty_
#define ADenotation_Aempty_(x1,x3) {x3=_ADenotation_Aempty_(x1);}
#endif

#ifndef ADenotation_Sl
#define ADenotation_Sl(x1,x2,x4) {x4=_ADenotation_Sl(x1,x2);}
#endif

#ifndef ADenotation_Sle
#define ADenotation_Sle(x1,x2,x4) {x4=_ADenotation_Sle(x1,x2);}
#endif

#ifndef ADenotation_Sge
#define ADenotation_Sge(x1,x2,x4) {x4=_ADenotation_Sge(x1,x2);}
#endif

#ifndef ADenotation_Sg
#define ADenotation_Sg(x1,x2,x4) {x4=_ADenotation_Sg(x1,x2);}
#endif

#ifndef ADenotation_Se
#define ADenotation_Se(x1,x2,x4) {x4=_ADenotation_Se(x1,x2);}
#endif

#ifndef ADenotation_SSe
#define ADenotation_SSe(x1,x2,x4) {x4=_ADenotation_SSe(x1,x2);}
#endif

#ifndef ADenotation_S5
#define ADenotation_S5(x1,x2) {x2=_ADenotation_S5(x1);}
#endif

#ifndef ADenotation_S1_O1
#define ADenotation_S1_O1(x1,x2) {x2=_ADenotation_S1_O1(x1);}
#endif

#ifndef ADenotation_AuncheckedUpd
#define ADenotation_AuncheckedUpd(x1,x2,x3,x4) {x4=_ADenotation_AuncheckedUpd(x1,x2,x3);}
#endif

#ifndef ADenotation_AuncheckedSel
#define ADenotation_AuncheckedSel(x1,x2,x3) {x3=_ADenotation_AuncheckedSel(x1,x2);}
#endif

#ifndef ADenotation_Acompare
#define ADenotation_Acompare(x1,x2,x3) {x3=_ADenotation_Acompare(x1,x2);}
#endif

#ifndef ADenotation_S5_L30
#define ADenotation_S5_L30(x1,x2) {x2=_ADenotation_S5_L30(x1);}
#endif

#endif
