Frame<SourceValue> (@NotNull Frame<? extends Value> frame) { Frame<SourceValue> preFrame = new Frame<>(frame.getLocals(), frame.getMaxStackSize()); for (int i = 0; i < frame.getLocals(); i++) { preFrame.setLocal(i, new PreValue(true, i, frame.getLocal(i).getSize())); } for (int i = 0; i < frame.getStackSize(); i++) { preFrame.push(new PreValue(false, i, frame.getStack(i).getSize())); } return preFrame; }