typedef union {
    PARSE_TREE *leaf;
    long Int;
    double Real;	
    char *String;	
    char *ID;		
} YYSTYPE;

#ifndef YYLTYPE
typedef
  struct yyltype
    {
      int timestamp;
      int first_line;
      int first_column;
      int last_line;
      int last_column;
      char *text;
   }
  yyltype;

#define YYLTYPE yyltype
#endif

#define	integer	257
#define	binary_integer	258
#define	octal_integer	259
#define	hex_integer	260
#define	real_literal	261
#define	identifier	262
#define	character_string	263
#define	duration	264
#define	time_of_day	265
#define	date	266
#define	date_and_time	267
#define	direct_variable	268
#define	simple_type_name	269
#define	subrange_type_name	270
#define	enumerated_type_name	271
#define	array_type_name	272
#define	structure_type_name	273
#define	string_type_name	274
#define	variable_name	275
#define	global_var_name	276
#define	fb_name	277
#define	oper_exp	278
#define	oper_ne	279
#define	oper_le	280
#define	oper_ge	281
#define	field_selector	282
#define	ACTION	283
#define	ADD	284
#define	AND	285
#define	ANDN	286
#define	ARRAY	287
#define	AT	288
#define	BOOL	289
#define	BY	290
#define	BYTE	291
#define	CAL	292
#define	CALC	293
#define	CALCN	294
#define	CASE	295
#define	CD	296
#define	CLK	297
#define	CONCAT	298
#define	CONSTANT	299
#define	CONFIGURATION	300
#define	CTU	301
#define	CTD	302
#define	CTUD	303
#define	CU	304
#define	DATE	305
#define	DATE_AND_TIME	306
#define	DINT	307
#define	DIV	308
#define	DO	309
#define	DWORD	310
#define	END_ACTION	311
#define	END_CONFIGURATION	312
#define	END_CASE	313
#define	END_FOR	314
#define	END_FUNCTION	315
#define	END_FUNCTION_BLOCK	316
#define	END_PROGRAM	317
#define	END_REPEAT	318
#define	END_STEP	319
#define	END_TYPE	320
#define	END_RESOURCE	321
#define	END_STRUCT	322
#define	END_TRANSITION	323
#define	END_VAR	324
#define	END_WHILE	325
#define	END_IF	326
#define	ELSE	327
#define	ELSIF	328
#define	EQ	329
#define	EXIT	330
#define	EXPT	331
#define	F_EDGE	332
#define	F_TRIG	333
#define	FALSE	334
#define	FOR	335
#define	FROM	336
#define	FUNCTION	337
#define	FUNCTION_BLOCK	338
#define	GE	339
#define	GT	340
#define	IF	341
#define	IN	342
#define	INSERT	343
#define	INT	344
#define	INITIAL_STEP	345
#define	INTERVAL	346
#define	JMP	347
#define	JMPC	348
#define	JMPCN	349
#define	LD	350
#define	LDN	351
#define	LE	352
#define	LIMIT	353
#define	LT	354
#define	LINT	355
#define	LREAL	356
#define	LWORD	357
#define	MAX	358
#define	MIN	359
#define	MOD	360
#define	MOVE	361
#define	MUL	362
#define	MUX	363
#define	NE	364
#define	NOT	365
#define	OF	366
#define	ON	367
#define	OR	368
#define	ORN	369
#define	PROGRAM	370
#define	PRIORITY	371
#define	PT	372
#define	PV	373
#define	R_EDGE	374
#define	R_TRIG	375
#define	R1	376
#define	READ_ONLY	377
#define	READ_WRITE	378
#define	REAL	379
#define	REPEAT	380
#define	RESOURCE	381
#define	RET	382
#define	RETAIN	383
#define	RETC	384
#define	RETCN	385
#define	RETURN	386
#define	RS	387
#define	S1	388
#define	SEL	389
#define	SINGLE	390
#define	SINT	391
#define	SQRT	392
#define	SR	393
#define	ST	394
#define	STEP	395
#define	STN	396
#define	STRING	397
#define	STRUCT	398
#define	SUB	399
#define	TASK	400
#define	THEN	401
#define	TIME	402
#define	TIME_OF_DAY	403
#define	TO	404
#define	TOF	405
#define	TON	406
#define	TP	407
#define	TRANSITION	408
#define	TRUE	409
#define	TYPE	410
#define	UDINT	411
#define	UINT	412
#define	ULINT	413
#define	UNTIL	414
#define	USINT	415
#define	VAR	416
#define	VAR_ACCESS	417
#define	VAR_EXTERNAL	418
#define	VAR_GLOBAL	419
#define	VAR_IN_OUT	420
#define	VAR_INPUT	421
#define	VAR_OUTPUT	422
#define	WHILE	423
#define	WITH	424
#define	WORD	425
#define	XOR	426
#define	XORN	427


extern YYSTYPE yylval;
