public LuaValue get(LuaValue key) {
		if (jclass == null)
			jclass = JavaClass.forClass(m_instance.getClass());
		Field f = jclass.getField(key);
		if (f != null)
			try {
				return CoerceJavaToLua.coerce(f.get(m_instance));
			} catch (Exception e) {
				throw new LuaError(e);
			}
		LuaValue m = jclass.getMethod(key);
		if (m != null)
			return m;
		Class c = jclass.getInnerClass(key);
		if (c != null)
			return JavaClass.forClass(c);
		return super.get(key);
	}