private static Object wakeUpNaked(Class<?> c, Map<String,Object> data) {
		if (c == null) return null;

		Object returnObject;
		try {
			returnObject = c.newInstance();
		} catch (Throwable e) {
			return null;
		}

		if (data != null && data.size() > 0) {
			fill(returnObject,data);
		}
		
		try {
			Method m = c.getMethod("__wakeup");
			Object arglist[] = new Object[0];
			m.invoke(returnObject,arglist);
		} catch (NoSuchMethodException nsme) {
			
		} catch (Exception e) {
			
		}
        return returnObject;
	}