public String expandBody(MssCFGenContext genContext) {
    ICFLibAnyObj genDef;
    final String S_ProcName = "expandBody";

    if (genContext == null) {
      throw CFLib.getDefaultExceptionFactory()
          .newNullArgumentException(getClass(), S_ProcName, 1, "genContext");
    }

    genDef = genContext.getGenDef();
    if (genDef == null) {
      throw CFLib.getDefaultExceptionFactory()
          .newNullArgumentException(getClass(), S_ProcName, 0, "genContext.GenDef");
    }

    if (!(genDef instanceof ICFBamTableObj)) {
      throw CFLib.getDefaultExceptionFactory()
          .newUnsupportedClassException(
              getClass(), S_ProcName, "genContext.GenDef", genDef, "ICFBamTableObj");
    }

    ICFBamTableObj table = (ICFBamTableObj) genDef;

    String ret;
    String raw = table.getOptionalJObjImplementation();
    if ((raw == null) || (raw.length() <= 0)) {
      ret = "";
    } else {
      ICFGenKbGelInstructionObj bin =
          genContext
              .getGenEngine()
              .getGelCompiler()
              .compileExecutable(genContext.getGenFile(), raw);
      ret = bin.expand(genContext);
    }

    return (ret);
  }