class JavaLongTest
{
	//--------------------------------------------------------------------------
	//Long test
	
	public static long Test(long param)
	{
		return 255L - param;
	}

	public static long[][][] Test3D(long[][][] param)
	{
		int i1, i2, i3, len1, len2, len3;

		len1 = param.length;
		for (i1=0; i1<len1; i1++)
		{
			len2 = param[i1].length;
			for (i2=0; i2<len2; i2++)
			{
				len3 = param[i1][i2].length;
				for (i3=0; i3<len3; i3++)
				{
					param[i1][i2][i3] = 255L - param[i1][i2][i3];
				}
			}
		}
		return param;
	}

	//--------------------------------------------------------------------------
	//Long Object test

	public static Long TestObj(Long param)
	{
		return new Long(255L - param.longValue());
	}

	public static Long[][][] TestObj3D(Long[][][] param)
	{
		int i1, i2, i3, len1, len2, len3;

		len1 = param.length;
		for (i1=0; i1<len1; i1++)
		{
			len2 = param[i1].length;
			for (i2=0; i2<len2; i2++)
			{
				len3 = param[i1][i2].length;
				for (i3=0; i3<len3; i3++)
				{
					param[i1][i2][i3] = new Long(255L - param[i1][i2][i3].longValue()); 
				}
			}
		}
		return param;
	}
}
