/**
   * The main function of your component. If no args are provided, then the CORBA object is not
   * bound to an SCA Domain or NamingService and can be run as a standard Java application.
   *
   * @param args
   * @generated
   */
  public static void main(String[] args) {
    final Properties orbProps = new Properties();

    // begin-user-code
    // TODO You may add extra startup code here, for example:
    // orbProps.put("com.sun.CORBA.giop.ORBFragmentSize", Integer.toString(fragSize));
    // end-user-code

    try {
      Resource.start_component(SigGen.class, args, orbProps);
    } catch (InvalidObjectReference e) {
      e.printStackTrace();
    } catch (NotFound e) {
      e.printStackTrace();
    } catch (CannotProceed e) {
      e.printStackTrace();
    } catch (InvalidName e) {
      e.printStackTrace();
    } catch (ServantNotActive e) {
      e.printStackTrace();
    } catch (WrongPolicy e) {
      e.printStackTrace();
    } catch (InstantiationException e) {
      e.printStackTrace();
    } catch (IllegalAccessException e) {
      e.printStackTrace();
    }

    // begin-user-code
    // TODO You may add extra shutdown code here
    // end-user-code
  }
  public static NoOperacaoMultiplicacao empacotar(
      br.univali.portugol.nucleo.asa.NoOperacaoMultiplicacao noOperacaoPortugol,
      POA rootPOA,
      ORB orb) {
    if (noOperacaoPortugol != null) {
      try {
        NoOperacaoMultiplicacaoProxy noOperacaoProxy =
            new NoOperacaoMultiplicacaoProxy(noOperacaoPortugol, rootPOA, orb);
        org.omg.CORBA.Object referencia = rootPOA.servant_to_reference(noOperacaoProxy);
        NoOperacaoMultiplicacao noOperacaoCORBA = NoOperacaoMultiplicacaoHelper.narrow(referencia);
        noOperacaoProxy.referencia = noOperacaoCORBA;

        return noOperacaoCORBA;
      } catch (WrongPolicy excecao) {
        throw new UNKNOWN(excecao.getMessage());
      } catch (ServantNotActive excecao) {
        throw new UNKNOWN(excecao.getMessage());
      }
    }

    return null;
  }