public static String getAssetTypeName(String assetTypeID, String serverID) {

        String name = otapiJNI.OTAPI_Basic_GetAssetType_Name(assetTypeID);

        if (Utility.VerifyStringVal(name)) {
            return name;
        }

        if (!Utility.VerifyStringVal(otapiJNI.OTAPI_Basic_LoadAssetContract(assetTypeID))) {
            System.out.println("IN getAssetTypeName, OT_API_LoadAssetContract is null");

            // ----------------------------------------

            String nymID = new NYM().registeredNYM(serverID);

            if (!Utility.VerifyStringVal(nymID)) {
                return "Popup Dialog";
            }

            OTAPI_Func theRequest = new OTAPI_Func(OTAPI_Func.FT.GET_CONTRACT, serverID, nymID, assetTypeID);
            String strResponse = OTAPI_Func.SendRequest(theRequest, "GET_CONTRACT");

            if (!Utility.VerifyStringVal(strResponse)) {
                System.out.println("IN getAssetTypeName: OTAPI_Func.SendRequest(() failed. (I give up.) ");
                return null;
            }


        }
        String strAssetID = new String(Utility.VerifyStringVal(otapiJNI.OTAPI_Basic_GetAssetType_Name(assetTypeID)) ? otapiJNI.OTAPI_Basic_GetAssetType_Name(assetTypeID) : "");
        return strAssetID;


    }