//
// Copyright (c) 1997 X/Open Company Ltd., A member of The Open Group.
//
// All rights reserved. No part of this source code may be reproduced,
// stored in a retrieval system, or transmitted, in any form or by any
// means, electronic, mechanical, photocopying, recording or otherwise,
// except as stated in the end-user licence agreement, without the prior
// permission of the copyright owners.
//
// Developed for X/Open by ApTest Ireland Limited.
//
// Project: CORVAL2
//


typedef sequence<sequence<sequence<sequence<short> ,18> > ,18>  Parsnip2[13];

typedef sequence<sequence<sequence<sequence<short,15> ,11> > >  Prunes2;

typedef sequence<sequence<sequence<sequence<unsigned long> > ,7> >  Plum2[10];

typedef sequence<sequence<sequence<sequence<unsigned long,19> > > ,12>  EggPlant2;

typedef sequence<sequence<sequence<sequence<unsigned long,6> > ,9> ,7>  Mustard2;

typedef sequence<sequence<sequence<sequence<unsigned short> > ,4> >  Elderberry2[2];

typedef sequence<sequence<sequence<sequence<unsigned short,5> > ,3> >  RedPepper2;

typedef sequence<sequence<sequence<sequence<char> > > ,9>  Artichokes2[3];

typedef sequence<sequence<sequence<sequence<char,17> ,6> ,6> ,18>  KiwanoMelon2[15];

typedef sequence<sequence<sequence<sequence<boolean,11> > > >  BritishQueens2;

typedef sequence<sequence<sequence<sequence<octet> > > >  Starfruit3[7];

typedef sequence<sequence<sequence<sequence<octet,14> ,11> > >  Parsnip3[5];

typedef sequence<sequence<sequence<string,2> ,16> >  Billberries3;

typedef sequence<sequence<sequence<string<4> ,5> ,14> ,2>  GooseBerry3[11];

typedef sequence<string,7>  Elderberry3[14];

interface idlServer {

  exception Parsnip2Excpt{
    ::Parsnip2 ex1;
  };

  attribute ::Parsnip2 Parsnip2Attr;

  ::Parsnip2 Parsnip2Op(
    in    ::Parsnip2 p1,
    out   ::Parsnip2 p2,
    inout ::Parsnip2 p3
  ) raises (Parsnip2Excpt);

  exception Prunes2Excpt{
    ::Prunes2 ex1;
  };

  attribute ::Prunes2 Prunes2Attr;

  ::Prunes2 Prunes2Op(
    in    ::Prunes2 p1,
    out   ::Prunes2 p2,
    inout ::Prunes2 p3
  ) raises (Prunes2Excpt);

  exception Plum2Excpt{
    ::Plum2 ex1;
  };

  attribute ::Plum2 Plum2Attr;

  ::Plum2 Plum2Op(
    in    ::Plum2 p1,
    out   ::Plum2 p2,
    inout ::Plum2 p3
  ) raises (Plum2Excpt);

  exception EggPlant2Excpt{
    ::EggPlant2 ex1;
  };

  attribute ::EggPlant2 EggPlant2Attr;

  ::EggPlant2 EggPlant2Op(
    in    ::EggPlant2 p1,
    out   ::EggPlant2 p2,
    inout ::EggPlant2 p3
  ) raises (EggPlant2Excpt);

  exception Mustard2Excpt{
    ::Mustard2 ex1;
  };

  attribute ::Mustard2 Mustard2Attr;

  ::Mustard2 Mustard2Op(
    in    ::Mustard2 p1,
    out   ::Mustard2 p2,
    inout ::Mustard2 p3
  ) raises (Mustard2Excpt);

  exception Elderberry2Excpt{
    ::Elderberry2 ex1;
  };

  attribute ::Elderberry2 Elderberry2Attr;

  ::Elderberry2 Elderberry2Op(
    in    ::Elderberry2 p1,
    out   ::Elderberry2 p2,
    inout ::Elderberry2 p3
  ) raises (Elderberry2Excpt);

  exception RedPepper2Excpt{
    ::RedPepper2 ex1;
  };

  attribute ::RedPepper2 RedPepper2Attr;

  ::RedPepper2 RedPepper2Op(
    in    ::RedPepper2 p1,
    out   ::RedPepper2 p2,
    inout ::RedPepper2 p3
  ) raises (RedPepper2Excpt);

  exception Artichokes2Excpt{
    ::Artichokes2 ex1;
  };

  attribute ::Artichokes2 Artichokes2Attr;

  ::Artichokes2 Artichokes2Op(
    in    ::Artichokes2 p1,
    out   ::Artichokes2 p2,
    inout ::Artichokes2 p3
  ) raises (Artichokes2Excpt);

  exception KiwanoMelon2Excpt{
    ::KiwanoMelon2 ex1;
  };

  attribute ::KiwanoMelon2 KiwanoMelon2Attr;

  ::KiwanoMelon2 KiwanoMelon2Op(
    in    ::KiwanoMelon2 p1,
    out   ::KiwanoMelon2 p2,
    inout ::KiwanoMelon2 p3
  ) raises (KiwanoMelon2Excpt);

  exception BritishQueens2Excpt{
    ::BritishQueens2 ex1;
  };

  attribute ::BritishQueens2 BritishQueens2Attr;

  ::BritishQueens2 BritishQueens2Op(
    in    ::BritishQueens2 p1,
    out   ::BritishQueens2 p2,
    inout ::BritishQueens2 p3
  ) raises (BritishQueens2Excpt);

  exception Starfruit3Excpt{
    ::Starfruit3 ex1;
  };

  attribute ::Starfruit3 Starfruit3Attr;

  ::Starfruit3 Starfruit3Op(
    in    ::Starfruit3 p1,
    out   ::Starfruit3 p2,
    inout ::Starfruit3 p3
  ) raises (Starfruit3Excpt);

  exception Parsnip3Excpt{
    ::Parsnip3 ex1;
  };

  attribute ::Parsnip3 Parsnip3Attr;

  ::Parsnip3 Parsnip3Op(
    in    ::Parsnip3 p1,
    out   ::Parsnip3 p2,
    inout ::Parsnip3 p3
  ) raises (Parsnip3Excpt);

  exception Billberries3Excpt{
    ::Billberries3 ex1;
  };

  attribute ::Billberries3 Billberries3Attr;

  ::Billberries3 Billberries3Op(
    in    ::Billberries3 p1,
    out   ::Billberries3 p2,
    inout ::Billberries3 p3
  ) raises (Billberries3Excpt);

  exception GooseBerry3Excpt{
    ::GooseBerry3 ex1;
  };

  attribute ::GooseBerry3 GooseBerry3Attr;

  ::GooseBerry3 GooseBerry3Op(
    in    ::GooseBerry3 p1,
    out   ::GooseBerry3 p2,
    inout ::GooseBerry3 p3
  ) raises (GooseBerry3Excpt);

  exception Elderberry3Excpt{
    ::Elderberry3 ex1;
  };

  attribute ::Elderberry3 Elderberry3Attr;

  ::Elderberry3 Elderberry3Op(
    in    ::Elderberry3 p1,
    out   ::Elderberry3 p2,
    inout ::Elderberry3 p3
  ) raises (Elderberry3Excpt);
};

