import java.util.*; import java.io.*; aspect ConstantPool { public static final byte ConstantPool.CONSTANT_Class = 7; public static final byte ConstantPool.CONSTANT_Fieldref = 9; public static final byte ConstantPool.CONSTANT_Methodref = 10; public static final byte ConstantPool.CONSTANT_InterfaceMethodref = 11; public static final byte ConstantPool.CONSTANT_String = 8; public static final byte ConstantPool.CONSTANT_Integer = 3; public static final byte ConstantPool.CONSTANT_Float = 4; public static final byte ConstantPool.CONSTANT_Long = 5; public static final byte ConstantPool.CONSTANT_Double = 6; public static final byte ConstantPool.CONSTANT_NameAndType = 12; public static final byte ConstantPool.CONSTANT_Utf8 = 1; inh lazy int CPInfo.pos(); eq ConstantPool.getCPInfo(int i).pos() { if(i == 0) return 1; else return getCPInfo(i - 1).pos() + getCPInfo(i - 1).size(); } syn int CPInfo.size() = 1; eq ConstantLong.size() = 2; eq ConstantDouble.size() = 2; syn lazy int ConstantPool.addClass(String name) { name = name.replace('.', '/'); for (int i = 0; i