public class SYSTEM { /* Каркас для фреймов процедур */ public static abstract class FRAME { public FRAME up; } /* Длинна строки LEN(s$) */ public static int LEN(byte[] x) { int i = 0; while(x[i] != 0) { i += 1; } return i; } public static void COPY(byte[] x, byte[] v) { int len_x = LEN(x); int len_v = v.length - 1; int len = (len_x < len_v) ? (len_x) : (len_v); for(int i = 0; i < len; i++) { v[i] = x[i]; } v[len] = 0; } public static void HALT(long n) { System.exit((int) n); } public static void ASSERT(boolean x) { assert x; } public static void ASSERT(boolean x, long n) { assert x : n; } public static void TRAP(long n) { if(n == -1) { throw new RuntimeException("CASE TRAP"); } else if(n == -2) { throw new RuntimeException("WITH TRAP"); } else { throw new RuntimeException("TRAP CODE " + n); } } }