#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define STZ 225 //STORE 0's AT ADDRESS X-1 OF LENGTH X
#define FHA 226 //FREE HEAP ADDRESS X-1 WITH LENGTH X
#define LFR 227 //LOAD FROM RETURN STACK
#define PRS 228 //RETURN STACK PUSH
#define JMR 229 //JUMP TO X. USE THE RETURN STACK
#define JER 230 //JUMP TO X IF X-1 EQUAL TO X-2. USE THE RETURN STACK
#define JNR 231 //JUMP TO X IF X-1 NOT EQUAL TO X-2. USE THE RETURN STACK
#define NFH 232 //NEXT FREE HEAP
#define CMP 233 //COMPARE
#define RIN 234 //READ IN FROM STDIN
#define LSL 235 //LOGICAL SHIFT LEFT
#define AND 236 //LOGICAL AND
#define LOR 237 //LOGICAL OR
#define STV 238 //STORE VARIABLE DATA AT ADDRESS X-1 OF LENGTH X
#define END 239 //END PROGRAM
#define JCC 240 //JUMP TO CALLING CODE
#define DUP 241 //COPY X TO X
#define LIT 242 //DECLARES THE NEXT SHORT IS A LITERAL SHORT
#define POP 243 //REMOVE THE TOP OF THE STACK
#define STA 244 //STORE X-1 IN ADDRESS X
#define LFA 245 //LOAD FROM ADDRESS X TO X
#define JMP 246 //JUMP TO X
#define JNE 247 //JUMP TO X IF X-1 NOT EQUAL TO X-2
#define JEQ 248 //JUMP TO X IF X-1 EQUAL TO X-2
#define SWP 249 //SWAP X and X-1
#define OVR 250 //COPY X-1 TO X
#define DIV 251 ///
#define MUL 252 //*
#define SUB 253 //-
#define ADD 254 //+
#define OUT 255 //OUTPUT TO STDOUT