void initInputFrame(final ClassWriter cw, final int access,
			final Type[] args, final int maxLocals) {
		inputLocals = new int[maxLocals];
		inputStack = new int[0];
		int i = 0;
		if ((access & Opcodes.ACC_STATIC) == 0) {
			if ((access & MethodWriter.ACC_CONSTRUCTOR) == 0) {
				inputLocals[i++] = OBJECT | cw.addType(cw.thisName);
			} else {
				inputLocals[i++] = UNINITIALIZED_THIS;
			}
		}
		for (int j = 0; j < args.length; ++j) {
			int t = type(cw, args[j].getDescriptor());
			inputLocals[i++] = t;
			if (t == LONG || t == DOUBLE) {
				inputLocals[i++] = TOP;
			}
		}
		while (i < maxLocals) {
			inputLocals[i++] = TOP;
		}
	}