// array.idl,v 1.2 1998/05/13 14:27:32 levine Exp

typedef sequence<long,10> vec10;
typedef char str22[22][2];
typedef boolean boolarray[3][40];


struct A {
    long	a1;
    char	a2[17];
    char	a3[10][2];
//    vec10	a3;
};

struct B {
    long	b1;
    A		b2;
};

struct C {
    long	c1;
    long	c2;
};

typedef A A_matrix[2][3][4];
typedef B B_matrix[2][3][4];
typedef C C_matrix[2][3][4];

typedef A_matrix A_rmatrix[2][3][4][5];

interface A_i {
    A		op(in A a1, inout A a2, out A a3);
    str22	op2(in str22 a1, inout str22 a2, out str22 a3);
    str22       op3(in short a1[3][4], inout short a2[3][4], out short a3[4][4]);
    A_matrix	op4(in A a1, inout A a2, out A a3);
    attribute str22 attribute_array;
    void foo(in any x[3], out any y[4], inout any z[3]);
};

