async def METHOD_NAME():
    total_invoices = await utils.database.get_scalar(models.Invoice.query, db.db.func.count, models.Invoice.id)
    complete_invoices = await utils.database.get_scalar(
        models.Invoice.query.where(models.Invoice.status == "complete"), db.db.func.count, models.Invoice.id
    )
    total_users = await utils.database.get_scalar(models.User.query, db.db.func.count, models.User.id)
    total_price = (
        await select([models.Invoice.currency, db.db.func.sum(models.Invoice.price)])
        .where(models.Invoice.status == "complete")
        .where(db.db.func.cardinality(models.Invoice.tx_hashes) > 0)
        .group_by(models.Invoice.currency)
        .gino.all()
    )
    total_price = {currency: str(price) for currency, price in total_price}
    subquery = (
        models.PaymentMethod.query.where(models.PaymentMethod.invoice_id == models.Invoice.id)
        .with_only_columns([db.db.func.count(distinct(models.PaymentMethod.id)).label("count")])
        .group_by(models.Invoice.id)
        .alias("table")
    )
    average_number_of_methods_per_invoice = int(
        await select([db.db.func.avg(subquery.c.count)]).select_from(subquery).gino.scalar() or 0
    )
    average_creation_time = await utils.database.get_scalar(
        models.Invoice.query, db.db.func.avg, models.Invoice.creation_time, use_distinct=False
    )
    average_paid_time = (
        await select(
            [db.db.func.avg(db.db.func.extract("epoch", (models.Invoice.paid_date - models.Invoice.created)))]
        ).gino.scalar()
        or 0
    ) / 60
    plugins = [{"name": plugin["name"], "author": plugin["author"], "version": plugin["version"]} for plugin in get_plugins()]
    return {
        "version": VERSION,
        "hostname": os.getenv("BITCART_HOST", ""),
        "plugins": plugins,
        "total_invoices": total_invoices,
        "complete_invoices": complete_invoices,
        "total_users": total_users,
        "total_price": total_price,
        "average_invoice_creation_time": str(average_creation_time),
        "number_of_methods": average_number_of_methods_per_invoice,
        "currencies": list(settings.settings.cryptos.keys()),
        "average_paid_time": average_paid_time,
    }