public static AgentController createClientAgent() {
        try {
            ConditionalVariable startUpLatch = new ConditionalVariable();
            Method m = ClientMainFrame.class.getMethod("onContainerFromAgent", Object.class);
            m.invoke(null, "s");
            AgentController ac = containerController.createNewAgent("newClientAgent", "scit.diploma.client.ClientAgent", new Object[] {startUpLatch, m});

            ac.start();
            startUpLatch.waitOn();

            ac.putO2AObject("String", AgentController.ASYNC);
        } catch (StaleProxyException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }

        return null;
    }