DoInMercatorInstanceRequest doInMercatorInstanceRequest = new DoInMercatorInstanceRequest
{
    Type = histoDescriptor.Type,
    Id = histoDescriptor.Id,
    Journal = histoDescriptor.Journal,
    Piece = histoDescriptor.Piece
};

MercatorPenguin.DoInMercatorInstanceDescriptor doInMercatorInstanceDescriptor = new MercatorPenguin.DoInMercatorInstanceDescriptor
{
    Assembly = "<Other\\TestPenguinCustom\\Server\\TestPenguinCustomServer.dll",
    ClassName = "TestPenguinCustomServer.TestClass",
    MethodName = "DoubleQuantities",
    Parameter = Api.JsonConvertSerializeObject(doInMercatorInstanceRequest)
};

activityIndicator.SetActive(true);
var r = await MercatorPenguin.BaseCustomPage.DoInMercatorInstance(doInMercatorInstanceDescriptor);
activityIndicator.SetActive(false);
if (r.Error != null)
{
    _ = MercatorPenguin.Dialogs.Stop(this, r.Error);
}
else
{
    DoInMercatorInstanceResponse doInMercatorInstanceResponse = Api.JsonConvertDeserializeObject<DoInMercatorInstanceResponse>(r.Result);
    if (doInMercatorInstanceResponse.Error != null)
        _ = MercatorPenguin.Dialogs.Stop(this, doInMercatorInstanceResponse.Error);
    else
        _ = MercatorPenguin.Dialogs.Stop(this, doInMercatorInstanceResponse.Result);
}