public Case ReuseCase(ArrayList stats)
    {
        if (_env == null)
        {
            throw new ContextException("environment variable is not set");
        }

        ICBRContext ctx = CBRContextManager.GetCBRContext(_env);

        if (ctx == null)
        {
            throw new ContextException("context is not set");
        }
        IMethod m = ctx.GetCaseReuseMethod();

        if (m == null)
        {
            throw new ContextException(
                      "context's GetCaseRetrievalMethod is not set");
        }
        ctx.SetReuseCase((Case)m.Execute(stats));


        return((Case)m.Execute(stats));
    }