/* Device.c generated by valac 0.56.18-dirty, the Vala compiler
 * generated from Device.vala, do not modify */

/*
 * Copyright (c) 2011-2018 elementary LLC. (https://elementary.io)
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public
 * License along with this program; if not, write to the
 * Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
 * Boston, MA 02110-1301, USA.
 */

#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include "power.h"
#include <gio/gio.h>
#include <float.h>
#include <math.h>

#define HISTORY_TYPE_RATE "rate"
#define HISTORY_TYPE_CHARGE "charge"
#define STATISTICS_TYPE_CHARGING "charging"
#define STATISTICS_TYPE_DISCHARGING "discharging"
#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif

typedef GDBusProxy PowerServicesDBusInterfacesDeviceProxy;
typedef GDBusProxyClass PowerServicesDBusInterfacesDeviceProxyClass;
#define _g_free0(var) (var = (g_free (var), NULL))

static GType power_services_dbus_interfaces_device_get_type_once (void);
static void power_services_dbus_interfaces_device_proxy_g_signal (GDBusProxy* proxy,
                                                           const gchar* sender_name,
                                                           const gchar* signal_name,
                                                           GVariant* parameters);
static PowerServicesDBusInterfacesHistoryDataPoint* power_services_dbus_interfaces_device_proxy_get_history (PowerServicesDBusInterfacesDevice* self,
                                                                                                      const gchar* type,
                                                                                                      guint32 timespan,
                                                                                                      guint32 resolution,
                                                                                                      gint* result_length1,
                                                                                                      GError** error);
static PowerServicesDBusInterfacesStatisticsDataPoint* power_services_dbus_interfaces_device_proxy_get_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                                                            const gchar* type,
                                                                                                            gint* result_length1,
                                                                                                            GError** error);
static void power_services_dbus_interfaces_device_proxy_refresh (PowerServicesDBusInterfacesDevice* self,
                                                          GError** error);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_has_history (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_has_history (PowerServicesDBusInterfacesDevice* self,
                                                                       gboolean value);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_has_statistics (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_has_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                          gboolean value);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_is_present (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_is_present (PowerServicesDBusInterfacesDevice* self,
                                                                      gboolean value);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_is_rechargeable (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_is_rechargeable (PowerServicesDBusInterfacesDevice* self,
                                                                           gboolean value);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_online (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_online (PowerServicesDBusInterfacesDevice* self,
                                                                  gboolean value);
static gboolean power_services_dbus_interfaces_device_dbus_proxy_get_power_supply (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_power_supply (PowerServicesDBusInterfacesDevice* self,
                                                                        gboolean value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_capacity (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_capacity (PowerServicesDBusInterfacesDevice* self,
                                                                    gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_energy (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_energy (PowerServicesDBusInterfacesDevice* self,
                                                                  gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_energy_empty (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_energy_empty (PowerServicesDBusInterfacesDevice* self,
                                                                        gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_energy_full (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_energy_full (PowerServicesDBusInterfacesDevice* self,
                                                                       gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_energy_full_design (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_energy_full_design (PowerServicesDBusInterfacesDevice* self,
                                                                              gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_energy_rate (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_energy_rate (PowerServicesDBusInterfacesDevice* self,
                                                                       gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_luminosity (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_luminosity (PowerServicesDBusInterfacesDevice* self,
                                                                      gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_percentage (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_percentage (PowerServicesDBusInterfacesDevice* self,
                                                                      gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_temperature (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_temperature (PowerServicesDBusInterfacesDevice* self,
                                                                       gdouble value);
static gdouble power_services_dbus_interfaces_device_dbus_proxy_get_voltage (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_voltage (PowerServicesDBusInterfacesDevice* self,
                                                                   gdouble value);
static gint64 power_services_dbus_interfaces_device_dbus_proxy_get_time_to_empty (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_time_to_empty (PowerServicesDBusInterfacesDevice* self,
                                                                         gint64 value);
static gint64 power_services_dbus_interfaces_device_dbus_proxy_get_time_to_full (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_time_to_full (PowerServicesDBusInterfacesDevice* self,
                                                                        gint64 value);
static gchar* power_services_dbus_interfaces_device_dbus_proxy_get_model (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_model (PowerServicesDBusInterfacesDevice* self,
                                                                 const gchar* value);
static gchar* power_services_dbus_interfaces_device_dbus_proxy_get_native_path (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_native_path (PowerServicesDBusInterfacesDevice* self,
                                                                       const gchar* value);
static gchar* power_services_dbus_interfaces_device_dbus_proxy_get_serial (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_serial (PowerServicesDBusInterfacesDevice* self,
                                                                  const gchar* value);
static gchar* power_services_dbus_interfaces_device_dbus_proxy_get_vendor (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_vendor (PowerServicesDBusInterfacesDevice* self,
                                                                  const gchar* value);
static guint32 power_services_dbus_interfaces_device_dbus_proxy_get_battery_level (PowerServicesDBusInterfacesDevice* self);
static guint32 power_services_dbus_interfaces_device_dbus_proxy_get_state (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_state (PowerServicesDBusInterfacesDevice* self,
                                                                 guint32 value);
static guint32 power_services_dbus_interfaces_device_dbus_proxy_get_technology (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_technology (PowerServicesDBusInterfacesDevice* self,
                                                                      guint32 value);
static guint32 power_services_dbus_interfaces_device_dbus_proxy_get_Type (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_Type (PowerServicesDBusInterfacesDevice* self,
                                                                guint32 value);
static guint64 power_services_dbus_interfaces_device_dbus_proxy_get_update_time (PowerServicesDBusInterfacesDevice* self);
static void power_services_dbus_interfaces_device_dbus_proxy_set_update_time (PowerServicesDBusInterfacesDevice* self,
                                                                       guint64 value);
static void power_services_dbus_interfaces_device_proxy_power_services_dbus_interfaces_device_interface_init (PowerServicesDBusInterfacesDeviceIface* iface);
static void _dbus_power_services_dbus_interfaces_device_get_history (PowerServicesDBusInterfacesDevice* self,
                                                              GVariant* _parameters_,
                                                              GDBusMethodInvocation* invocation);
static void _dbus_power_services_dbus_interfaces_device_get_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _parameters_,
                                                                 GDBusMethodInvocation* invocation);
static void _dbus_power_services_dbus_interfaces_device_refresh (PowerServicesDBusInterfacesDevice* self,
                                                          GVariant* _parameters_,
                                                          GDBusMethodInvocation* invocation);
static void power_services_dbus_interfaces_device_dbus_interface_method_call (GDBusConnection* connection,
                                                                       const gchar* sender,
                                                                       const gchar* object_path,
                                                                       const gchar* interface_name,
                                                                       const gchar* method_name,
                                                                       GVariant* parameters,
                                                                       GDBusMethodInvocation* invocation,
                                                                       gpointer user_data);
static GVariant* power_services_dbus_interfaces_device_dbus_interface_get_property (GDBusConnection* connection,
                                                                             const gchar* sender,
                                                                             const gchar* object_path,
                                                                             const gchar* interface_name,
                                                                             const gchar* property_name,
                                                                             GError** error,
                                                                             gpointer user_data);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_has_history (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_has_statistics (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_is_present (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_is_rechargeable (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_online (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_power_supply (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_capacity (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_energy (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_energy_empty (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_energy_full (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_energy_full_design (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_energy_rate (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_luminosity (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_percentage (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_temperature (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_voltage (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_time_to_empty (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_time_to_full (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_model (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_native_path (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_serial (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_vendor (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_battery_level (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_state (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_technology (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_Type (PowerServicesDBusInterfacesDevice* self);
static GVariant* _dbus_power_services_dbus_interfaces_device_get_update_time (PowerServicesDBusInterfacesDevice* self);
static gboolean power_services_dbus_interfaces_device_dbus_interface_set_property (GDBusConnection* connection,
                                                                            const gchar* sender,
                                                                            const gchar* object_path,
                                                                            const gchar* interface_name,
                                                                            const gchar* property_name,
                                                                            GVariant* value,
                                                                            GError** error,
                                                                            gpointer user_data);
static void _dbus_power_services_dbus_interfaces_device_set_has_history (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_has_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                     GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_is_present (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_is_rechargeable (PowerServicesDBusInterfacesDevice* self,
                                                                      GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_online (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_power_supply (PowerServicesDBusInterfacesDevice* self,
                                                                   GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_capacity (PowerServicesDBusInterfacesDevice* self,
                                                               GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_energy (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_energy_empty (PowerServicesDBusInterfacesDevice* self,
                                                                   GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_energy_full (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_energy_full_design (PowerServicesDBusInterfacesDevice* self,
                                                                         GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_energy_rate (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_luminosity (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_percentage (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_temperature (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_voltage (PowerServicesDBusInterfacesDevice* self,
                                                              GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_time_to_empty (PowerServicesDBusInterfacesDevice* self,
                                                                    GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_time_to_full (PowerServicesDBusInterfacesDevice* self,
                                                                   GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_model (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_native_path (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_serial (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_vendor (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_state (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_technology (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_Type (PowerServicesDBusInterfacesDevice* self,
                                                           GVariant* _value);
static void _dbus_power_services_dbus_interfaces_device_set_update_time (PowerServicesDBusInterfacesDevice* self,
                                                                  GVariant* _value);
static void _power_services_dbus_interfaces_device_unregister_object (gpointer user_data);

static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_history_type = {-1, "type", "s", NULL};
static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_history_timespan = {-1, "timespan", "u", NULL};
static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_history_resolution = {-1, "resolution", "u", NULL};
static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_history_result = {-1, "result", "a(udu)", NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_get_history_in[] = {&_power_services_dbus_interfaces_device_dbus_arg_info_get_history_type, &_power_services_dbus_interfaces_device_dbus_arg_info_get_history_timespan, &_power_services_dbus_interfaces_device_dbus_arg_info_get_history_resolution, NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_get_history_out[] = {&_power_services_dbus_interfaces_device_dbus_arg_info_get_history_result, NULL};
static const GDBusMethodInfo _power_services_dbus_interfaces_device_dbus_method_info_get_history = {-1, "GetHistory", (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_get_history_in), (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_get_history_out), NULL};
static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_type = {-1, "type", "s", NULL};
static const GDBusArgInfo _power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_result = {-1, "result", "a(dd)", NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_in[] = {&_power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_type, NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_out[] = {&_power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_result, NULL};
static const GDBusMethodInfo _power_services_dbus_interfaces_device_dbus_method_info_get_statistics = {-1, "GetStatistics", (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_in), (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_get_statistics_out), NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_refresh_in[] = {NULL};
static const GDBusArgInfo * const _power_services_dbus_interfaces_device_dbus_arg_info_refresh_out[] = {NULL};
static const GDBusMethodInfo _power_services_dbus_interfaces_device_dbus_method_info_refresh = {-1, "Refresh", (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_refresh_in), (GDBusArgInfo **) (&_power_services_dbus_interfaces_device_dbus_arg_info_refresh_out), NULL};
static const GDBusMethodInfo * const _power_services_dbus_interfaces_device_dbus_method_info[] = {&_power_services_dbus_interfaces_device_dbus_method_info_get_history, &_power_services_dbus_interfaces_device_dbus_method_info_get_statistics, &_power_services_dbus_interfaces_device_dbus_method_info_refresh, NULL};
static const GDBusSignalInfo * const _power_services_dbus_interfaces_device_dbus_signal_info[] = {NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_has_history = {-1, "HasHistory", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_has_statistics = {-1, "HasStatistics", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_is_present = {-1, "IsPresent", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_is_rechargeable = {-1, "IsRechargeable", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_online = {-1, "Online", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_power_supply = {-1, "PowerSupply", "b", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_capacity = {-1, "Capacity", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_energy = {-1, "Energy", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_energy_empty = {-1, "EnergyEmpty", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_energy_full = {-1, "EnergyFull", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_energy_full_design = {-1, "EnergyFullDesign", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_energy_rate = {-1, "EnergyRate", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_luminosity = {-1, "Luminosity", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_percentage = {-1, "Percentage", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_temperature = {-1, "Temperature", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_voltage = {-1, "Voltage", "d", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_time_to_empty = {-1, "TimeToEmpty", "x", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_time_to_full = {-1, "TimeToFull", "x", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_model = {-1, "Model", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_native_path = {-1, "NativePath", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_serial = {-1, "Serial", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_vendor = {-1, "Vendor", "s", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_battery_level = {-1, "BatteryLevel", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_state = {-1, "State", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_technology = {-1, "Technology", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_Type = {-1, "Type", "u", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo _power_services_dbus_interfaces_device_dbus_property_info_update_time = {-1, "UpdateTime", "t", G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE, NULL};
static const GDBusPropertyInfo * const _power_services_dbus_interfaces_device_dbus_property_info[] = {&_power_services_dbus_interfaces_device_dbus_property_info_has_history, &_power_services_dbus_interfaces_device_dbus_property_info_has_statistics, &_power_services_dbus_interfaces_device_dbus_property_info_is_present, &_power_services_dbus_interfaces_device_dbus_property_info_is_rechargeable, &_power_services_dbus_interfaces_device_dbus_property_info_online, &_power_services_dbus_interfaces_device_dbus_property_info_power_supply, &_power_services_dbus_interfaces_device_dbus_property_info_capacity, &_power_services_dbus_interfaces_device_dbus_property_info_energy, &_power_services_dbus_interfaces_device_dbus_property_info_energy_empty, &_power_services_dbus_interfaces_device_dbus_property_info_energy_full, &_power_services_dbus_interfaces_device_dbus_property_info_energy_full_design, &_power_services_dbus_interfaces_device_dbus_property_info_energy_rate, &_power_services_dbus_interfaces_device_dbus_property_info_luminosity, &_power_services_dbus_interfaces_device_dbus_property_info_percentage, &_power_services_dbus_interfaces_device_dbus_property_info_temperature, &_power_services_dbus_interfaces_device_dbus_property_info_voltage, &_power_services_dbus_interfaces_device_dbus_property_info_time_to_empty, &_power_services_dbus_interfaces_device_dbus_property_info_time_to_full, &_power_services_dbus_interfaces_device_dbus_property_info_model, &_power_services_dbus_interfaces_device_dbus_property_info_native_path, &_power_services_dbus_interfaces_device_dbus_property_info_serial, &_power_services_dbus_interfaces_device_dbus_property_info_vendor, &_power_services_dbus_interfaces_device_dbus_property_info_battery_level, &_power_services_dbus_interfaces_device_dbus_property_info_state, &_power_services_dbus_interfaces_device_dbus_property_info_technology, &_power_services_dbus_interfaces_device_dbus_property_info_Type, &_power_services_dbus_interfaces_device_dbus_property_info_update_time, NULL};
static const GDBusInterfaceInfo _power_services_dbus_interfaces_device_dbus_interface_info = {-1, "org.freedesktop.UPower.Device", (GDBusMethodInfo **) (&_power_services_dbus_interfaces_device_dbus_method_info), (GDBusSignalInfo **) (&_power_services_dbus_interfaces_device_dbus_signal_info), (GDBusPropertyInfo **) (&_power_services_dbus_interfaces_device_dbus_property_info), NULL};
static const GDBusInterfaceVTable _power_services_dbus_interfaces_device_dbus_interface_vtable = {power_services_dbus_interfaces_device_dbus_interface_method_call, power_services_dbus_interfaces_device_dbus_interface_get_property, power_services_dbus_interfaces_device_dbus_interface_set_property};

PowerServicesDBusInterfacesHistoryDataPoint*
power_services_dbus_interfaces_history_data_point_dup (const PowerServicesDBusInterfacesHistoryDataPoint* self)
{
	PowerServicesDBusInterfacesHistoryDataPoint* dup;
	dup = g_new0 (PowerServicesDBusInterfacesHistoryDataPoint, 1);
	memcpy (dup, self, sizeof (PowerServicesDBusInterfacesHistoryDataPoint));
	return dup;
}

void
power_services_dbus_interfaces_history_data_point_free (PowerServicesDBusInterfacesHistoryDataPoint* self)
{
	g_free (self);
}

static GType
power_services_dbus_interfaces_history_data_point_get_type_once (void)
{
	GType power_services_dbus_interfaces_history_data_point_type_id;
	power_services_dbus_interfaces_history_data_point_type_id = g_boxed_type_register_static ("PowerServicesDBusInterfacesHistoryDataPoint", (GBoxedCopyFunc) power_services_dbus_interfaces_history_data_point_dup, (GBoxedFreeFunc) power_services_dbus_interfaces_history_data_point_free);
	return power_services_dbus_interfaces_history_data_point_type_id;
}

GType
power_services_dbus_interfaces_history_data_point_get_type (void)
{
	static volatile gsize power_services_dbus_interfaces_history_data_point_type_id__once = 0;
	if (g_once_init_enter (&power_services_dbus_interfaces_history_data_point_type_id__once)) {
		GType power_services_dbus_interfaces_history_data_point_type_id;
		power_services_dbus_interfaces_history_data_point_type_id = power_services_dbus_interfaces_history_data_point_get_type_once ();
		g_once_init_leave (&power_services_dbus_interfaces_history_data_point_type_id__once, power_services_dbus_interfaces_history_data_point_type_id);
	}
	return power_services_dbus_interfaces_history_data_point_type_id__once;
}

PowerServicesDBusInterfacesStatisticsDataPoint*
power_services_dbus_interfaces_statistics_data_point_dup (const PowerServicesDBusInterfacesStatisticsDataPoint* self)
{
	PowerServicesDBusInterfacesStatisticsDataPoint* dup;
	dup = g_new0 (PowerServicesDBusInterfacesStatisticsDataPoint, 1);
	memcpy (dup, self, sizeof (PowerServicesDBusInterfacesStatisticsDataPoint));
	return dup;
}

void
power_services_dbus_interfaces_statistics_data_point_free (PowerServicesDBusInterfacesStatisticsDataPoint* self)
{
	g_free (self);
}

static GType
power_services_dbus_interfaces_statistics_data_point_get_type_once (void)
{
	GType power_services_dbus_interfaces_statistics_data_point_type_id;
	power_services_dbus_interfaces_statistics_data_point_type_id = g_boxed_type_register_static ("PowerServicesDBusInterfacesStatisticsDataPoint", (GBoxedCopyFunc) power_services_dbus_interfaces_statistics_data_point_dup, (GBoxedFreeFunc) power_services_dbus_interfaces_statistics_data_point_free);
	return power_services_dbus_interfaces_statistics_data_point_type_id;
}

GType
power_services_dbus_interfaces_statistics_data_point_get_type (void)
{
	static volatile gsize power_services_dbus_interfaces_statistics_data_point_type_id__once = 0;
	if (g_once_init_enter (&power_services_dbus_interfaces_statistics_data_point_type_id__once)) {
		GType power_services_dbus_interfaces_statistics_data_point_type_id;
		power_services_dbus_interfaces_statistics_data_point_type_id = power_services_dbus_interfaces_statistics_data_point_get_type_once ();
		g_once_init_leave (&power_services_dbus_interfaces_statistics_data_point_type_id__once, power_services_dbus_interfaces_statistics_data_point_type_id);
	}
	return power_services_dbus_interfaces_statistics_data_point_type_id__once;
}

PowerServicesDBusInterfacesHistoryDataPoint*
power_services_dbus_interfaces_device_get_history (PowerServicesDBusInterfacesDevice* self,
                                                   const gchar* type,
                                                   guint32 timespan,
                                                   guint32 resolution,
                                                   gint* result_length1,
                                                   GError** error)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_history) {
		return _iface_->get_history (self, type, timespan, resolution, result_length1, error);
	}
	return NULL;
}

PowerServicesDBusInterfacesStatisticsDataPoint*
power_services_dbus_interfaces_device_get_statistics (PowerServicesDBusInterfacesDevice* self,
                                                      const gchar* type,
                                                      gint* result_length1,
                                                      GError** error)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_statistics) {
		return _iface_->get_statistics (self, type, result_length1, error);
	}
	return NULL;
}

void
power_services_dbus_interfaces_device_refresh (PowerServicesDBusInterfacesDevice* self,
                                               GError** error)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->refresh) {
		_iface_->refresh (self, error);
	}
}

gboolean
power_services_dbus_interfaces_device_get_has_history (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_has_history) {
		return _iface_->get_has_history (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_has_history (PowerServicesDBusInterfacesDevice* self,
                                                       gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_has_history) {
		_iface_->set_has_history (self, value);
	}
}

gboolean
power_services_dbus_interfaces_device_get_has_statistics (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_has_statistics) {
		return _iface_->get_has_statistics (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_has_statistics (PowerServicesDBusInterfacesDevice* self,
                                                          gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_has_statistics) {
		_iface_->set_has_statistics (self, value);
	}
}

gboolean
power_services_dbus_interfaces_device_get_is_present (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_is_present) {
		return _iface_->get_is_present (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_is_present (PowerServicesDBusInterfacesDevice* self,
                                                      gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_is_present) {
		_iface_->set_is_present (self, value);
	}
}

gboolean
power_services_dbus_interfaces_device_get_is_rechargeable (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_is_rechargeable) {
		return _iface_->get_is_rechargeable (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_is_rechargeable (PowerServicesDBusInterfacesDevice* self,
                                                           gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_is_rechargeable) {
		_iface_->set_is_rechargeable (self, value);
	}
}

gboolean
power_services_dbus_interfaces_device_get_online (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_online) {
		return _iface_->get_online (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_online (PowerServicesDBusInterfacesDevice* self,
                                                  gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_online) {
		_iface_->set_online (self, value);
	}
}

gboolean
power_services_dbus_interfaces_device_get_power_supply (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, FALSE);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_power_supply) {
		return _iface_->get_power_supply (self);
	}
	return FALSE;
}

void
power_services_dbus_interfaces_device_set_power_supply (PowerServicesDBusInterfacesDevice* self,
                                                        gboolean value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_power_supply) {
		_iface_->set_power_supply (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_capacity (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_capacity) {
		return _iface_->get_capacity (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_capacity (PowerServicesDBusInterfacesDevice* self,
                                                    gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_capacity) {
		_iface_->set_capacity (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_energy (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_energy) {
		return _iface_->get_energy (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_energy (PowerServicesDBusInterfacesDevice* self,
                                                  gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_energy) {
		_iface_->set_energy (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_energy_empty (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_energy_empty) {
		return _iface_->get_energy_empty (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_energy_empty (PowerServicesDBusInterfacesDevice* self,
                                                        gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_energy_empty) {
		_iface_->set_energy_empty (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_energy_full (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_energy_full) {
		return _iface_->get_energy_full (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_energy_full (PowerServicesDBusInterfacesDevice* self,
                                                       gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_energy_full) {
		_iface_->set_energy_full (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_energy_full_design (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_energy_full_design) {
		return _iface_->get_energy_full_design (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_energy_full_design (PowerServicesDBusInterfacesDevice* self,
                                                              gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_energy_full_design) {
		_iface_->set_energy_full_design (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_energy_rate (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_energy_rate) {
		return _iface_->get_energy_rate (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_energy_rate (PowerServicesDBusInterfacesDevice* self,
                                                       gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_energy_rate) {
		_iface_->set_energy_rate (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_luminosity (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_luminosity) {
		return _iface_->get_luminosity (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_luminosity (PowerServicesDBusInterfacesDevice* self,
                                                      gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_luminosity) {
		_iface_->set_luminosity (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_percentage (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_percentage) {
		return _iface_->get_percentage (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_percentage (PowerServicesDBusInterfacesDevice* self,
                                                      gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_percentage) {
		_iface_->set_percentage (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_temperature (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_temperature) {
		return _iface_->get_temperature (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_temperature (PowerServicesDBusInterfacesDevice* self,
                                                       gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_temperature) {
		_iface_->set_temperature (self, value);
	}
}

gdouble
power_services_dbus_interfaces_device_get_voltage (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0.0);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_voltage) {
		return _iface_->get_voltage (self);
	}
	return -1.0;
}

void
power_services_dbus_interfaces_device_set_voltage (PowerServicesDBusInterfacesDevice* self,
                                                   gdouble value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_voltage) {
		_iface_->set_voltage (self, value);
	}
}

gint64
power_services_dbus_interfaces_device_get_time_to_empty (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0LL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_time_to_empty) {
		return _iface_->get_time_to_empty (self);
	}
	return -1LL;
}

void
power_services_dbus_interfaces_device_set_time_to_empty (PowerServicesDBusInterfacesDevice* self,
                                                         gint64 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_time_to_empty) {
		_iface_->set_time_to_empty (self, value);
	}
}

gint64
power_services_dbus_interfaces_device_get_time_to_full (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0LL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_time_to_full) {
		return _iface_->get_time_to_full (self);
	}
	return -1LL;
}

void
power_services_dbus_interfaces_device_set_time_to_full (PowerServicesDBusInterfacesDevice* self,
                                                        gint64 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_time_to_full) {
		_iface_->set_time_to_full (self, value);
	}
}

gchar*
power_services_dbus_interfaces_device_get_model (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_model) {
		return _iface_->get_model (self);
	}
	return NULL;
}

void
power_services_dbus_interfaces_device_set_model (PowerServicesDBusInterfacesDevice* self,
                                                 const gchar* value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_model) {
		_iface_->set_model (self, value);
	}
}

gchar*
power_services_dbus_interfaces_device_get_native_path (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_native_path) {
		return _iface_->get_native_path (self);
	}
	return NULL;
}

void
power_services_dbus_interfaces_device_set_native_path (PowerServicesDBusInterfacesDevice* self,
                                                       const gchar* value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_native_path) {
		_iface_->set_native_path (self, value);
	}
}

gchar*
power_services_dbus_interfaces_device_get_serial (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_serial) {
		return _iface_->get_serial (self);
	}
	return NULL;
}

void
power_services_dbus_interfaces_device_set_serial (PowerServicesDBusInterfacesDevice* self,
                                                  const gchar* value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_serial) {
		_iface_->set_serial (self, value);
	}
}

gchar*
power_services_dbus_interfaces_device_get_vendor (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_vendor) {
		return _iface_->get_vendor (self);
	}
	return NULL;
}

void
power_services_dbus_interfaces_device_set_vendor (PowerServicesDBusInterfacesDevice* self,
                                                  const gchar* value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_vendor) {
		_iface_->set_vendor (self, value);
	}
}

guint32
power_services_dbus_interfaces_device_get_battery_level (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0U);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_battery_level) {
		return _iface_->get_battery_level (self);
	}
	return 0U;
}

guint32
power_services_dbus_interfaces_device_get_state (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0U);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_state) {
		return _iface_->get_state (self);
	}
	return 0U;
}

void
power_services_dbus_interfaces_device_set_state (PowerServicesDBusInterfacesDevice* self,
                                                 guint32 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_state) {
		_iface_->set_state (self, value);
	}
}

guint32
power_services_dbus_interfaces_device_get_technology (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0U);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_technology) {
		return _iface_->get_technology (self);
	}
	return 0U;
}

void
power_services_dbus_interfaces_device_set_technology (PowerServicesDBusInterfacesDevice* self,
                                                      guint32 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_technology) {
		_iface_->set_technology (self, value);
	}
}

guint32
power_services_dbus_interfaces_device_get_Type (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0U);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_Type) {
		return _iface_->get_Type (self);
	}
	return 0U;
}

void
power_services_dbus_interfaces_device_set_Type (PowerServicesDBusInterfacesDevice* self,
                                                guint32 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_Type) {
		_iface_->set_Type (self, value);
	}
}

guint64
power_services_dbus_interfaces_device_get_update_time (PowerServicesDBusInterfacesDevice* self)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_val_if_fail (self != NULL, 0ULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->get_update_time) {
		return _iface_->get_update_time (self);
	}
	return 0ULL;
}

void
power_services_dbus_interfaces_device_set_update_time (PowerServicesDBusInterfacesDevice* self,
                                                       guint64 value)
{
	PowerServicesDBusInterfacesDeviceIface* _iface_;
	g_return_if_fail (self != NULL);
	_iface_ = POWER_SERVICES_DBUS_INTERFACES_DEVICE_GET_INTERFACE (self);
	if (_iface_->set_update_time) {
		_iface_->set_update_time (self, value);
	}
}

static void
power_services_dbus_interfaces_device_default_init (PowerServicesDBusInterfacesDeviceIface * iface,
                                                    gpointer iface_data)
{
}

static GType
power_services_dbus_interfaces_device_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (PowerServicesDBusInterfacesDeviceIface), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) power_services_dbus_interfaces_device_default_init, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
	GType power_services_dbus_interfaces_device_type_id;
	power_services_dbus_interfaces_device_type_id = g_type_register_static (G_TYPE_INTERFACE, "PowerServicesDBusInterfacesDevice", &g_define_type_info, 0);
	g_type_interface_add_prerequisite (power_services_dbus_interfaces_device_type_id, g_dbus_proxy_get_type ());
	g_type_set_qdata (power_services_dbus_interfaces_device_type_id, g_quark_from_static_string ("vala-dbus-proxy-type"), (void*) power_services_dbus_interfaces_device_proxy_get_type);
	g_type_set_qdata (power_services_dbus_interfaces_device_type_id, g_quark_from_static_string ("vala-dbus-interface-name"), "org.freedesktop.UPower.Device");
	g_type_set_qdata (power_services_dbus_interfaces_device_type_id, g_quark_from_static_string ("vala-dbus-interface-info"), (void*) (&_power_services_dbus_interfaces_device_dbus_interface_info));
	g_type_set_qdata (power_services_dbus_interfaces_device_type_id, g_quark_from_static_string ("vala-dbus-register-object"), (void*) power_services_dbus_interfaces_device_register_object);
	return power_services_dbus_interfaces_device_type_id;
}

GType
power_services_dbus_interfaces_device_get_type (void)
{
	static volatile gsize power_services_dbus_interfaces_device_type_id__once = 0;
	if (g_once_init_enter (&power_services_dbus_interfaces_device_type_id__once)) {
		GType power_services_dbus_interfaces_device_type_id;
		power_services_dbus_interfaces_device_type_id = power_services_dbus_interfaces_device_get_type_once ();
		g_once_init_leave (&power_services_dbus_interfaces_device_type_id__once, power_services_dbus_interfaces_device_type_id);
	}
	return power_services_dbus_interfaces_device_type_id__once;
}

G_DEFINE_TYPE_EXTENDED (PowerServicesDBusInterfacesDeviceProxy, power_services_dbus_interfaces_device_proxy, G_TYPE_DBUS_PROXY, 0, G_IMPLEMENT_INTERFACE (POWER_SERVICES_DBUS_INTERFACES_TYPE_DEVICE, power_services_dbus_interfaces_device_proxy_power_services_dbus_interfaces_device_interface_init) )
static void
power_services_dbus_interfaces_device_proxy_class_init (PowerServicesDBusInterfacesDeviceProxyClass* klass)
{
	G_DBUS_PROXY_CLASS (klass)->g_signal = power_services_dbus_interfaces_device_proxy_g_signal;
}

static void
power_services_dbus_interfaces_device_proxy_g_signal (GDBusProxy* proxy,
                                                      const gchar* sender_name,
                                                      const gchar* signal_name,
                                                      GVariant* parameters)
{
}

static void
power_services_dbus_interfaces_device_proxy_init (PowerServicesDBusInterfacesDeviceProxy* self)
{
	g_dbus_proxy_set_interface_info (G_DBUS_PROXY (self), (GDBusInterfaceInfo *) (&_power_services_dbus_interfaces_device_dbus_interface_info));
}

static PowerServicesDBusInterfacesHistoryDataPoint*
power_services_dbus_interfaces_device_proxy_get_history (PowerServicesDBusInterfacesDevice* self,
                                                         const gchar* type,
                                                         guint32 timespan,
                                                         guint32 resolution,
                                                         gint* result_length1,
                                                         GError** error)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	PowerServicesDBusInterfacesHistoryDataPoint* _result = NULL;
	gint _result_length1;
	GVariant* _tmp0_;
	PowerServicesDBusInterfacesHistoryDataPoint* _tmp1_;
	gint _tmp1__length;
	gint _tmp1__size;
	gint _tmp1__length1;
	GVariantIter _tmp2_;
	GVariant* _tmp3_;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.freedesktop.UPower.Device", "GetHistory");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (type));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (timespan));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (resolution));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	_reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error);
	g_object_unref (_message);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp0_ = g_variant_iter_next_value (&_reply_iter);
	_tmp1_ = g_new (PowerServicesDBusInterfacesHistoryDataPoint, 5);
	_tmp1__length = 0;
	_tmp1__size = 4;
	_tmp1__length1 = 0;
	g_variant_iter_init (&_tmp2_, _tmp0_);
	for (; (_tmp3_ = g_variant_iter_next_value (&_tmp2_)) != NULL; _tmp1__length1++) {
		PowerServicesDBusInterfacesHistoryDataPoint _tmp4_;
		GVariantIter _tmp5_;
		GVariant* _tmp6_;
		GVariant* _tmp7_;
		GVariant* _tmp8_;
		if (_tmp1__size == _tmp1__length) {
			_tmp1__size = 2 * _tmp1__size;
			_tmp1_ = g_renew (PowerServicesDBusInterfacesHistoryDataPoint, _tmp1_, _tmp1__size + 1);
		}
		g_variant_iter_init (&_tmp5_, _tmp3_);
		_tmp6_ = g_variant_iter_next_value (&_tmp5_);
		_tmp4_.time = g_variant_get_uint32 (_tmp6_);
		g_variant_unref (_tmp6_);
		_tmp7_ = g_variant_iter_next_value (&_tmp5_);
		_tmp4_.value = g_variant_get_double (_tmp7_);
		g_variant_unref (_tmp7_);
		_tmp8_ = g_variant_iter_next_value (&_tmp5_);
		_tmp4_.state = g_variant_get_uint32 (_tmp8_);
		g_variant_unref (_tmp8_);
		_tmp1_[_tmp1__length++] = _tmp4_;
		g_variant_unref (_tmp3_);
	}
	_result_length1 = _tmp1__length1;
	_result = _tmp1_;
	g_variant_unref (_tmp0_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}

static PowerServicesDBusInterfacesStatisticsDataPoint*
power_services_dbus_interfaces_device_proxy_get_statistics (PowerServicesDBusInterfacesDevice* self,
                                                            const gchar* type,
                                                            gint* result_length1,
                                                            GError** error)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	GDBusMessage *_reply_message;
	GVariant *_reply;
	GVariantIter _reply_iter;
	PowerServicesDBusInterfacesStatisticsDataPoint* _result = NULL;
	gint _result_length1;
	GVariant* _tmp9_;
	PowerServicesDBusInterfacesStatisticsDataPoint* _tmp10_;
	gint _tmp10__length;
	gint _tmp10__size;
	gint _tmp10__length1;
	GVariantIter _tmp11_;
	GVariant* _tmp12_;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.freedesktop.UPower.Device", "GetStatistics");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (type));
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	_reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error);
	g_object_unref (_message);
	if (!_reply_message) {
		return NULL;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return NULL;
	}
	_reply = g_dbus_message_get_body (_reply_message);
	g_variant_iter_init (&_reply_iter, _reply);
	_result_length1 = 0;
	_tmp9_ = g_variant_iter_next_value (&_reply_iter);
	_tmp10_ = g_new (PowerServicesDBusInterfacesStatisticsDataPoint, 5);
	_tmp10__length = 0;
	_tmp10__size = 4;
	_tmp10__length1 = 0;
	g_variant_iter_init (&_tmp11_, _tmp9_);
	for (; (_tmp12_ = g_variant_iter_next_value (&_tmp11_)) != NULL; _tmp10__length1++) {
		PowerServicesDBusInterfacesStatisticsDataPoint _tmp13_;
		GVariantIter _tmp14_;
		GVariant* _tmp15_;
		GVariant* _tmp16_;
		if (_tmp10__size == _tmp10__length) {
			_tmp10__size = 2 * _tmp10__size;
			_tmp10_ = g_renew (PowerServicesDBusInterfacesStatisticsDataPoint, _tmp10_, _tmp10__size + 1);
		}
		g_variant_iter_init (&_tmp14_, _tmp12_);
		_tmp15_ = g_variant_iter_next_value (&_tmp14_);
		_tmp13_.value = g_variant_get_double (_tmp15_);
		g_variant_unref (_tmp15_);
		_tmp16_ = g_variant_iter_next_value (&_tmp14_);
		_tmp13_.accuracy = g_variant_get_double (_tmp16_);
		g_variant_unref (_tmp16_);
		_tmp10_[_tmp10__length++] = _tmp13_;
		g_variant_unref (_tmp12_);
	}
	_result_length1 = _tmp10__length1;
	_result = _tmp10_;
	g_variant_unref (_tmp9_);
	*result_length1 = _result_length1;
	g_object_unref (_reply_message);
	return _result;
}

static void
power_services_dbus_interfaces_device_proxy_refresh (PowerServicesDBusInterfacesDevice* self,
                                                     GError** error)
{
	GDBusMessage *_message;
	GVariant *_arguments;
	GVariantBuilder _arguments_builder;
	GDBusMessage *_reply_message;
	_message = g_dbus_message_new_method_call (g_dbus_proxy_get_name ((GDBusProxy *) self), g_dbus_proxy_get_object_path ((GDBusProxy *) self), "org.freedesktop.UPower.Device", "Refresh");
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	_arguments = g_variant_builder_end (&_arguments_builder);
	g_dbus_message_set_body (_message, _arguments);
	_reply_message = g_dbus_connection_send_message_with_reply_sync (g_dbus_proxy_get_connection ((GDBusProxy *) self), _message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, g_dbus_proxy_get_default_timeout ((GDBusProxy *) self), NULL, NULL, error);
	g_object_unref (_message);
	if (!_reply_message) {
		return;
	}
	if (g_dbus_message_to_gerror (_reply_message, error)) {
		g_object_unref (_reply_message);
		return;
	}
	g_object_unref (_reply_message);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_has_history (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "HasHistory");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("HasHistory"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp17_ = FALSE;
			return _tmp17_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_has_history (PowerServicesDBusInterfacesDevice* self,
                                                                  gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("HasHistory"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_has_statistics (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "HasStatistics");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("HasStatistics"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp18_ = FALSE;
			return _tmp18_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_has_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                     gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("HasStatistics"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_is_present (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "IsPresent");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("IsPresent"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp19_ = FALSE;
			return _tmp19_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_is_present (PowerServicesDBusInterfacesDevice* self,
                                                                 gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("IsPresent"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_is_rechargeable (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "IsRechargeable");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("IsRechargeable"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp20_ = FALSE;
			return _tmp20_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_is_rechargeable (PowerServicesDBusInterfacesDevice* self,
                                                                      gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("IsRechargeable"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_online (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Online");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Online"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp21_ = FALSE;
			return _tmp21_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_online (PowerServicesDBusInterfacesDevice* self,
                                                             gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Online"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gboolean
power_services_dbus_interfaces_device_dbus_proxy_get_power_supply (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gboolean _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "PowerSupply");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("PowerSupply"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gboolean _tmp22_ = FALSE;
			return _tmp22_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_boolean (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_power_supply (PowerServicesDBusInterfacesDevice* self,
                                                                   gboolean value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("PowerSupply"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_boolean (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_capacity (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Capacity");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Capacity"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp23_ = 0.0;
			return _tmp23_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_capacity (PowerServicesDBusInterfacesDevice* self,
                                                               gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Capacity"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_energy (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Energy");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Energy"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp24_ = 0.0;
			return _tmp24_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_energy (PowerServicesDBusInterfacesDevice* self,
                                                             gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Energy"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_energy_empty (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "EnergyEmpty");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyEmpty"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp25_ = 0.0;
			return _tmp25_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_energy_empty (PowerServicesDBusInterfacesDevice* self,
                                                                   gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyEmpty"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_energy_full (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "EnergyFull");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyFull"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp26_ = 0.0;
			return _tmp26_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_energy_full (PowerServicesDBusInterfacesDevice* self,
                                                                  gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyFull"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_energy_full_design (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "EnergyFullDesign");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyFullDesign"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp27_ = 0.0;
			return _tmp27_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_energy_full_design (PowerServicesDBusInterfacesDevice* self,
                                                                         gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyFullDesign"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_energy_rate (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "EnergyRate");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyRate"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp28_ = 0.0;
			return _tmp28_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_energy_rate (PowerServicesDBusInterfacesDevice* self,
                                                                  gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("EnergyRate"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_luminosity (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Luminosity");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Luminosity"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp29_ = 0.0;
			return _tmp29_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_luminosity (PowerServicesDBusInterfacesDevice* self,
                                                                 gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Luminosity"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_percentage (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Percentage");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Percentage"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp30_ = 0.0;
			return _tmp30_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_percentage (PowerServicesDBusInterfacesDevice* self,
                                                                 gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Percentage"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_temperature (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Temperature");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Temperature"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp31_ = 0.0;
			return _tmp31_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_temperature (PowerServicesDBusInterfacesDevice* self,
                                                                  gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Temperature"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gdouble
power_services_dbus_interfaces_device_dbus_proxy_get_voltage (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gdouble _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Voltage");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Voltage"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gdouble _tmp32_ = 0.0;
			return _tmp32_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_double (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_voltage (PowerServicesDBusInterfacesDevice* self,
                                                              gdouble value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Voltage"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_double (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gint64
power_services_dbus_interfaces_device_dbus_proxy_get_time_to_empty (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gint64 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "TimeToEmpty");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("TimeToEmpty"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gint64 _tmp33_ = 0LL;
			return _tmp33_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int64 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_time_to_empty (PowerServicesDBusInterfacesDevice* self,
                                                                    gint64 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("TimeToEmpty"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int64 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gint64
power_services_dbus_interfaces_device_dbus_proxy_get_time_to_full (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gint64 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "TimeToFull");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("TimeToFull"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			gint64 _tmp34_ = 0LL;
			return _tmp34_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_int64 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_time_to_full (PowerServicesDBusInterfacesDevice* self,
                                                                   gint64 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("TimeToFull"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_int64 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gchar*
power_services_dbus_interfaces_device_dbus_proxy_get_model (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Model");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Model"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_model (PowerServicesDBusInterfacesDevice* self,
                                                            const gchar* value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Model"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gchar*
power_services_dbus_interfaces_device_dbus_proxy_get_native_path (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "NativePath");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("NativePath"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_native_path (PowerServicesDBusInterfacesDevice* self,
                                                                  const gchar* value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("NativePath"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gchar*
power_services_dbus_interfaces_device_dbus_proxy_get_serial (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Serial");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Serial"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_serial (PowerServicesDBusInterfacesDevice* self,
                                                             const gchar* value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Serial"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static gchar*
power_services_dbus_interfaces_device_dbus_proxy_get_vendor (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	gchar* _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Vendor");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Vendor"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			return NULL;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_dup_string (_inner_reply, NULL);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_vendor (PowerServicesDBusInterfacesDevice* self,
                                                             const gchar* value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Vendor"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static guint32
power_services_dbus_interfaces_device_dbus_proxy_get_battery_level (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	guint32 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "BatteryLevel");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("BatteryLevel"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			guint32 _tmp35_ = 0U;
			return _tmp35_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static guint32
power_services_dbus_interfaces_device_dbus_proxy_get_state (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	guint32 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "State");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("State"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			guint32 _tmp36_ = 0U;
			return _tmp36_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_state (PowerServicesDBusInterfacesDevice* self,
                                                            guint32 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("State"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static guint32
power_services_dbus_interfaces_device_dbus_proxy_get_technology (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	guint32 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Technology");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Technology"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			guint32 _tmp37_ = 0U;
			return _tmp37_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_technology (PowerServicesDBusInterfacesDevice* self,
                                                                 guint32 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Technology"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static guint32
power_services_dbus_interfaces_device_dbus_proxy_get_Type (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	guint32 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "Type");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			guint32 _tmp38_ = 0U;
			return _tmp38_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint32 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_Type (PowerServicesDBusInterfacesDevice* self,
                                                           guint32 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("Type"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint32 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static guint64
power_services_dbus_interfaces_device_dbus_proxy_get_update_time (PowerServicesDBusInterfacesDevice* self)
{
	GVariant *_inner_reply;
	guint64 _result;
	_inner_reply = g_dbus_proxy_get_cached_property ((GDBusProxy *) self, "UpdateTime");
	if (!_inner_reply) {
		GVariant *_arguments;
		GVariant *_reply;
		GVariantBuilder _arguments_builder;
		g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
		g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("UpdateTime"));
		_arguments = g_variant_builder_end (&_arguments_builder);
		_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
		if (!_reply) {
			guint64 _tmp39_ = 0ULL;
			return _tmp39_;
		}
		g_variant_get (_reply, "(v)", &_inner_reply);
		g_variant_unref (_reply);
	}
	_result = g_variant_get_uint64 (_inner_reply);
	g_variant_unref (_inner_reply);
	return _result;
}

static void
power_services_dbus_interfaces_device_dbus_proxy_set_update_time (PowerServicesDBusInterfacesDevice* self,
                                                                  guint64 value)
{
	GVariant *_arguments;
	GVariant *_reply;
	GVariantBuilder _arguments_builder;
	g_variant_builder_init (&_arguments_builder, G_VARIANT_TYPE_TUPLE);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("org.freedesktop.UPower.Device"));
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_string ("UpdateTime"));
	g_variant_builder_open (&_arguments_builder, G_VARIANT_TYPE_VARIANT);
	g_variant_builder_add_value (&_arguments_builder, g_variant_new_uint64 (value));
	g_variant_builder_close (&_arguments_builder);
	_arguments = g_variant_builder_end (&_arguments_builder);
	_reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Set", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
	if (!_reply) {
		return;
	}
	g_variant_unref (_reply);
}

static void
power_services_dbus_interfaces_device_proxy_power_services_dbus_interfaces_device_interface_init (PowerServicesDBusInterfacesDeviceIface* iface)
{
	iface->get_history = power_services_dbus_interfaces_device_proxy_get_history;
	iface->get_statistics = power_services_dbus_interfaces_device_proxy_get_statistics;
	iface->refresh = power_services_dbus_interfaces_device_proxy_refresh;
	iface->get_has_history = power_services_dbus_interfaces_device_dbus_proxy_get_has_history;
	iface->set_has_history = power_services_dbus_interfaces_device_dbus_proxy_set_has_history;
	iface->get_has_statistics = power_services_dbus_interfaces_device_dbus_proxy_get_has_statistics;
	iface->set_has_statistics = power_services_dbus_interfaces_device_dbus_proxy_set_has_statistics;
	iface->get_is_present = power_services_dbus_interfaces_device_dbus_proxy_get_is_present;
	iface->set_is_present = power_services_dbus_interfaces_device_dbus_proxy_set_is_present;
	iface->get_is_rechargeable = power_services_dbus_interfaces_device_dbus_proxy_get_is_rechargeable;
	iface->set_is_rechargeable = power_services_dbus_interfaces_device_dbus_proxy_set_is_rechargeable;
	iface->get_online = power_services_dbus_interfaces_device_dbus_proxy_get_online;
	iface->set_online = power_services_dbus_interfaces_device_dbus_proxy_set_online;
	iface->get_power_supply = power_services_dbus_interfaces_device_dbus_proxy_get_power_supply;
	iface->set_power_supply = power_services_dbus_interfaces_device_dbus_proxy_set_power_supply;
	iface->get_capacity = power_services_dbus_interfaces_device_dbus_proxy_get_capacity;
	iface->set_capacity = power_services_dbus_interfaces_device_dbus_proxy_set_capacity;
	iface->get_energy = power_services_dbus_interfaces_device_dbus_proxy_get_energy;
	iface->set_energy = power_services_dbus_interfaces_device_dbus_proxy_set_energy;
	iface->get_energy_empty = power_services_dbus_interfaces_device_dbus_proxy_get_energy_empty;
	iface->set_energy_empty = power_services_dbus_interfaces_device_dbus_proxy_set_energy_empty;
	iface->get_energy_full = power_services_dbus_interfaces_device_dbus_proxy_get_energy_full;
	iface->set_energy_full = power_services_dbus_interfaces_device_dbus_proxy_set_energy_full;
	iface->get_energy_full_design = power_services_dbus_interfaces_device_dbus_proxy_get_energy_full_design;
	iface->set_energy_full_design = power_services_dbus_interfaces_device_dbus_proxy_set_energy_full_design;
	iface->get_energy_rate = power_services_dbus_interfaces_device_dbus_proxy_get_energy_rate;
	iface->set_energy_rate = power_services_dbus_interfaces_device_dbus_proxy_set_energy_rate;
	iface->get_luminosity = power_services_dbus_interfaces_device_dbus_proxy_get_luminosity;
	iface->set_luminosity = power_services_dbus_interfaces_device_dbus_proxy_set_luminosity;
	iface->get_percentage = power_services_dbus_interfaces_device_dbus_proxy_get_percentage;
	iface->set_percentage = power_services_dbus_interfaces_device_dbus_proxy_set_percentage;
	iface->get_temperature = power_services_dbus_interfaces_device_dbus_proxy_get_temperature;
	iface->set_temperature = power_services_dbus_interfaces_device_dbus_proxy_set_temperature;
	iface->get_voltage = power_services_dbus_interfaces_device_dbus_proxy_get_voltage;
	iface->set_voltage = power_services_dbus_interfaces_device_dbus_proxy_set_voltage;
	iface->get_time_to_empty = power_services_dbus_interfaces_device_dbus_proxy_get_time_to_empty;
	iface->set_time_to_empty = power_services_dbus_interfaces_device_dbus_proxy_set_time_to_empty;
	iface->get_time_to_full = power_services_dbus_interfaces_device_dbus_proxy_get_time_to_full;
	iface->set_time_to_full = power_services_dbus_interfaces_device_dbus_proxy_set_time_to_full;
	iface->get_model = power_services_dbus_interfaces_device_dbus_proxy_get_model;
	iface->set_model = power_services_dbus_interfaces_device_dbus_proxy_set_model;
	iface->get_native_path = power_services_dbus_interfaces_device_dbus_proxy_get_native_path;
	iface->set_native_path = power_services_dbus_interfaces_device_dbus_proxy_set_native_path;
	iface->get_serial = power_services_dbus_interfaces_device_dbus_proxy_get_serial;
	iface->set_serial = power_services_dbus_interfaces_device_dbus_proxy_set_serial;
	iface->get_vendor = power_services_dbus_interfaces_device_dbus_proxy_get_vendor;
	iface->set_vendor = power_services_dbus_interfaces_device_dbus_proxy_set_vendor;
	iface->get_battery_level = power_services_dbus_interfaces_device_dbus_proxy_get_battery_level;
	iface->get_state = power_services_dbus_interfaces_device_dbus_proxy_get_state;
	iface->set_state = power_services_dbus_interfaces_device_dbus_proxy_set_state;
	iface->get_technology = power_services_dbus_interfaces_device_dbus_proxy_get_technology;
	iface->set_technology = power_services_dbus_interfaces_device_dbus_proxy_set_technology;
	iface->get_Type = power_services_dbus_interfaces_device_dbus_proxy_get_Type;
	iface->set_Type = power_services_dbus_interfaces_device_dbus_proxy_set_Type;
	iface->get_update_time = power_services_dbus_interfaces_device_dbus_proxy_get_update_time;
	iface->set_update_time = power_services_dbus_interfaces_device_dbus_proxy_set_update_time;
}

static void
_dbus_power_services_dbus_interfaces_device_get_history (PowerServicesDBusInterfacesDevice* self,
                                                         GVariant* _parameters_,
                                                         GDBusMethodInvocation* invocation)
{
	GError* error = NULL;
	GVariantIter _arguments_iter;
	gchar* type = NULL;
	GVariant* _tmp40_;
	guint32 timespan = 0U;
	GVariant* _tmp41_;
	guint32 resolution = 0U;
	GVariant* _tmp42_;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	PowerServicesDBusInterfacesHistoryDataPoint* result;
	gint result_length1 = 0;
	PowerServicesDBusInterfacesHistoryDataPoint* _tmp43_;
	GVariantBuilder _tmp44_;
	gint _tmp45_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_tmp40_ = g_variant_iter_next_value (&_arguments_iter);
	type = g_variant_dup_string (_tmp40_, NULL);
	g_variant_unref (_tmp40_);
	_tmp41_ = g_variant_iter_next_value (&_arguments_iter);
	timespan = g_variant_get_uint32 (_tmp41_);
	g_variant_unref (_tmp41_);
	_tmp42_ = g_variant_iter_next_value (&_arguments_iter);
	resolution = g_variant_get_uint32 (_tmp42_);
	g_variant_unref (_tmp42_);
	result = power_services_dbus_interfaces_device_get_history (self, type, timespan, resolution, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp43_ = result;
	g_variant_builder_init (&_tmp44_, G_VARIANT_TYPE ("a(udu)"));
	for (_tmp45_ = 0; _tmp45_ < result_length1; _tmp45_++) {
		GVariantBuilder _tmp46_;
		g_variant_builder_init (&_tmp46_, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_tmp46_, g_variant_new_uint32 ((*_tmp43_).time));
		g_variant_builder_add_value (&_tmp46_, g_variant_new_double ((*_tmp43_).value));
		g_variant_builder_add_value (&_tmp46_, g_variant_new_uint32 ((*_tmp43_).state));
		g_variant_builder_add_value (&_tmp44_, g_variant_builder_end (&_tmp46_));
		_tmp43_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp44_));
	result = (g_free (result), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (type);
	;
}

static void
_dbus_power_services_dbus_interfaces_device_get_statistics (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _parameters_,
                                                            GDBusMethodInvocation* invocation)
{
	GError* error = NULL;
	GVariantIter _arguments_iter;
	gchar* type = NULL;
	GVariant* _tmp47_;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	PowerServicesDBusInterfacesStatisticsDataPoint* result;
	gint result_length1 = 0;
	PowerServicesDBusInterfacesStatisticsDataPoint* _tmp48_;
	GVariantBuilder _tmp49_;
	gint _tmp50_;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	_tmp47_ = g_variant_iter_next_value (&_arguments_iter);
	type = g_variant_dup_string (_tmp47_, NULL);
	g_variant_unref (_tmp47_);
	result = power_services_dbus_interfaces_device_get_statistics (self, type, &result_length1, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		goto _error;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_tmp48_ = result;
	g_variant_builder_init (&_tmp49_, G_VARIANT_TYPE ("a(dd)"));
	for (_tmp50_ = 0; _tmp50_ < result_length1; _tmp50_++) {
		GVariantBuilder _tmp51_;
		g_variant_builder_init (&_tmp51_, G_VARIANT_TYPE_TUPLE);
		g_variant_builder_add_value (&_tmp51_, g_variant_new_double ((*_tmp48_).value));
		g_variant_builder_add_value (&_tmp51_, g_variant_new_double ((*_tmp48_).accuracy));
		g_variant_builder_add_value (&_tmp49_, g_variant_builder_end (&_tmp51_));
		_tmp48_++;
	}
	g_variant_builder_add_value (&_reply_builder, g_variant_builder_end (&_tmp49_));
	result = (g_free (result), NULL);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
	_error:
	_g_free0 (type);
	;
}

static void
_dbus_power_services_dbus_interfaces_device_refresh (PowerServicesDBusInterfacesDevice* self,
                                                     GVariant* _parameters_,
                                                     GDBusMethodInvocation* invocation)
{
	GError* error = NULL;
	GVariantIter _arguments_iter;
	GDBusMessage* _reply_message = NULL;
	GVariant* _reply;
	GVariantBuilder _reply_builder;
	g_variant_iter_init (&_arguments_iter, _parameters_);
	power_services_dbus_interfaces_device_refresh (self, &error);
	if (error) {
		g_dbus_method_invocation_take_error (invocation, error);
		return;
	}
	_reply_message = g_dbus_message_new_method_reply (g_dbus_method_invocation_get_message (invocation));
	g_variant_builder_init (&_reply_builder, G_VARIANT_TYPE_TUPLE);
	_reply = g_variant_builder_end (&_reply_builder);
	g_dbus_message_set_body (_reply_message, _reply);
	g_dbus_connection_send_message (g_dbus_method_invocation_get_connection (invocation), _reply_message, G_DBUS_SEND_MESSAGE_FLAGS_NONE, NULL, NULL);
	g_object_unref (invocation);
	g_object_unref (_reply_message);
}

static void
power_services_dbus_interfaces_device_dbus_interface_method_call (GDBusConnection* connection,
                                                                  const gchar* sender,
                                                                  const gchar* object_path,
                                                                  const gchar* interface_name,
                                                                  const gchar* method_name,
                                                                  GVariant* parameters,
                                                                  GDBusMethodInvocation* invocation,
                                                                  gpointer user_data)
{
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (method_name, "GetHistory") == 0) {
		_dbus_power_services_dbus_interfaces_device_get_history (object, parameters, invocation);
	} else if (strcmp (method_name, "GetStatistics") == 0) {
		_dbus_power_services_dbus_interfaces_device_get_statistics (object, parameters, invocation);
	} else if (strcmp (method_name, "Refresh") == 0) {
		_dbus_power_services_dbus_interfaces_device_refresh (object, parameters, invocation);
	} else {
		g_object_unref (invocation);
	}
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_has_history (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_has_history (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_has_statistics (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_has_statistics (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_is_present (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_is_present (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_is_rechargeable (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_is_rechargeable (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_online (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_online (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_power_supply (PowerServicesDBusInterfacesDevice* self)
{
	gboolean result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_power_supply (self);
	_reply = g_variant_new_boolean (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_capacity (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_capacity (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_energy (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_energy (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_energy_empty (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_energy_empty (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_energy_full (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_energy_full (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_energy_full_design (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_energy_full_design (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_energy_rate (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_energy_rate (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_luminosity (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_luminosity (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_percentage (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_percentage (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_temperature (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_temperature (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_voltage (PowerServicesDBusInterfacesDevice* self)
{
	gdouble result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_voltage (self);
	_reply = g_variant_new_double (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_time_to_empty (PowerServicesDBusInterfacesDevice* self)
{
	gint64 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_time_to_empty (self);
	_reply = g_variant_new_int64 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_time_to_full (PowerServicesDBusInterfacesDevice* self)
{
	gint64 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_time_to_full (self);
	_reply = g_variant_new_int64 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_model (PowerServicesDBusInterfacesDevice* self)
{
	gchar* result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_model (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_native_path (PowerServicesDBusInterfacesDevice* self)
{
	gchar* result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_native_path (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_serial (PowerServicesDBusInterfacesDevice* self)
{
	gchar* result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_serial (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_vendor (PowerServicesDBusInterfacesDevice* self)
{
	gchar* result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_vendor (self);
	_reply = g_variant_new_string (result);
	_g_free0 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_battery_level (PowerServicesDBusInterfacesDevice* self)
{
	guint32 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_battery_level (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_state (PowerServicesDBusInterfacesDevice* self)
{
	guint32 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_state (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_technology (PowerServicesDBusInterfacesDevice* self)
{
	guint32 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_technology (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_Type (PowerServicesDBusInterfacesDevice* self)
{
	guint32 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_Type (self);
	_reply = g_variant_new_uint32 (result);
	return _reply;
}

static GVariant*
_dbus_power_services_dbus_interfaces_device_get_update_time (PowerServicesDBusInterfacesDevice* self)
{
	guint64 result;
	GVariant* _reply;
	result = power_services_dbus_interfaces_device_get_update_time (self);
	_reply = g_variant_new_uint64 (result);
	return _reply;
}

static GVariant*
power_services_dbus_interfaces_device_dbus_interface_get_property (GDBusConnection* connection,
                                                                   const gchar* sender,
                                                                   const gchar* object_path,
                                                                   const gchar* interface_name,
                                                                   const gchar* property_name,
                                                                   GError** error,
                                                                   gpointer user_data)
{
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "HasHistory") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_has_history (object);
	} else if (strcmp (property_name, "HasStatistics") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_has_statistics (object);
	} else if (strcmp (property_name, "IsPresent") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_is_present (object);
	} else if (strcmp (property_name, "IsRechargeable") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_is_rechargeable (object);
	} else if (strcmp (property_name, "Online") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_online (object);
	} else if (strcmp (property_name, "PowerSupply") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_power_supply (object);
	} else if (strcmp (property_name, "Capacity") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_capacity (object);
	} else if (strcmp (property_name, "Energy") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_energy (object);
	} else if (strcmp (property_name, "EnergyEmpty") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_energy_empty (object);
	} else if (strcmp (property_name, "EnergyFull") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_energy_full (object);
	} else if (strcmp (property_name, "EnergyFullDesign") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_energy_full_design (object);
	} else if (strcmp (property_name, "EnergyRate") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_energy_rate (object);
	} else if (strcmp (property_name, "Luminosity") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_luminosity (object);
	} else if (strcmp (property_name, "Percentage") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_percentage (object);
	} else if (strcmp (property_name, "Temperature") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_temperature (object);
	} else if (strcmp (property_name, "Voltage") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_voltage (object);
	} else if (strcmp (property_name, "TimeToEmpty") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_time_to_empty (object);
	} else if (strcmp (property_name, "TimeToFull") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_time_to_full (object);
	} else if (strcmp (property_name, "Model") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_model (object);
	} else if (strcmp (property_name, "NativePath") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_native_path (object);
	} else if (strcmp (property_name, "Serial") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_serial (object);
	} else if (strcmp (property_name, "Vendor") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_vendor (object);
	} else if (strcmp (property_name, "BatteryLevel") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_battery_level (object);
	} else if (strcmp (property_name, "State") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_state (object);
	} else if (strcmp (property_name, "Technology") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_technology (object);
	} else if (strcmp (property_name, "Type") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_Type (object);
	} else if (strcmp (property_name, "UpdateTime") == 0) {
		return _dbus_power_services_dbus_interfaces_device_get_update_time (object);
	}
	return NULL;
}

static void
_dbus_power_services_dbus_interfaces_device_set_has_history (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_has_history (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_has_statistics (PowerServicesDBusInterfacesDevice* self,
                                                                GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_has_statistics (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_is_present (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_is_present (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_is_rechargeable (PowerServicesDBusInterfacesDevice* self,
                                                                 GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_is_rechargeable (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_online (PowerServicesDBusInterfacesDevice* self,
                                                        GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_online (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_power_supply (PowerServicesDBusInterfacesDevice* self,
                                                              GVariant* _value)
{
	gboolean value = FALSE;
	value = g_variant_get_boolean (_value);
	power_services_dbus_interfaces_device_set_power_supply (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_capacity (PowerServicesDBusInterfacesDevice* self,
                                                          GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_capacity (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_energy (PowerServicesDBusInterfacesDevice* self,
                                                        GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_energy (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_energy_empty (PowerServicesDBusInterfacesDevice* self,
                                                              GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_energy_empty (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_energy_full (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_energy_full (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_energy_full_design (PowerServicesDBusInterfacesDevice* self,
                                                                    GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_energy_full_design (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_energy_rate (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_energy_rate (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_luminosity (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_luminosity (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_percentage (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_percentage (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_temperature (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_temperature (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_voltage (PowerServicesDBusInterfacesDevice* self,
                                                         GVariant* _value)
{
	gdouble value = 0.0;
	value = g_variant_get_double (_value);
	power_services_dbus_interfaces_device_set_voltage (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_time_to_empty (PowerServicesDBusInterfacesDevice* self,
                                                               GVariant* _value)
{
	gint64 value = 0LL;
	value = g_variant_get_int64 (_value);
	power_services_dbus_interfaces_device_set_time_to_empty (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_time_to_full (PowerServicesDBusInterfacesDevice* self,
                                                              GVariant* _value)
{
	gint64 value = 0LL;
	value = g_variant_get_int64 (_value);
	power_services_dbus_interfaces_device_set_time_to_full (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_model (PowerServicesDBusInterfacesDevice* self,
                                                       GVariant* _value)
{
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	power_services_dbus_interfaces_device_set_model (self, value);
	_g_free0 (value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_native_path (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	power_services_dbus_interfaces_device_set_native_path (self, value);
	_g_free0 (value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_serial (PowerServicesDBusInterfacesDevice* self,
                                                        GVariant* _value)
{
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	power_services_dbus_interfaces_device_set_serial (self, value);
	_g_free0 (value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_vendor (PowerServicesDBusInterfacesDevice* self,
                                                        GVariant* _value)
{
	gchar* value = NULL;
	value = g_variant_dup_string (_value, NULL);
	power_services_dbus_interfaces_device_set_vendor (self, value);
	_g_free0 (value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_state (PowerServicesDBusInterfacesDevice* self,
                                                       GVariant* _value)
{
	guint32 value = 0U;
	value = g_variant_get_uint32 (_value);
	power_services_dbus_interfaces_device_set_state (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_technology (PowerServicesDBusInterfacesDevice* self,
                                                            GVariant* _value)
{
	guint32 value = 0U;
	value = g_variant_get_uint32 (_value);
	power_services_dbus_interfaces_device_set_technology (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_Type (PowerServicesDBusInterfacesDevice* self,
                                                      GVariant* _value)
{
	guint32 value = 0U;
	value = g_variant_get_uint32 (_value);
	power_services_dbus_interfaces_device_set_Type (self, value);
}

static void
_dbus_power_services_dbus_interfaces_device_set_update_time (PowerServicesDBusInterfacesDevice* self,
                                                             GVariant* _value)
{
	guint64 value = 0ULL;
	value = g_variant_get_uint64 (_value);
	power_services_dbus_interfaces_device_set_update_time (self, value);
}

static gboolean
power_services_dbus_interfaces_device_dbus_interface_set_property (GDBusConnection* connection,
                                                                   const gchar* sender,
                                                                   const gchar* object_path,
                                                                   const gchar* interface_name,
                                                                   const gchar* property_name,
                                                                   GVariant* value,
                                                                   GError** error,
                                                                   gpointer user_data)
{
	gpointer* data;
	gpointer object;
	data = user_data;
	object = data[0];
	if (strcmp (property_name, "HasHistory") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_has_history (object, value);
		return TRUE;
	} else if (strcmp (property_name, "HasStatistics") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_has_statistics (object, value);
		return TRUE;
	} else if (strcmp (property_name, "IsPresent") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_is_present (object, value);
		return TRUE;
	} else if (strcmp (property_name, "IsRechargeable") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_is_rechargeable (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Online") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_online (object, value);
		return TRUE;
	} else if (strcmp (property_name, "PowerSupply") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_power_supply (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Capacity") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_capacity (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Energy") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_energy (object, value);
		return TRUE;
	} else if (strcmp (property_name, "EnergyEmpty") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_energy_empty (object, value);
		return TRUE;
	} else if (strcmp (property_name, "EnergyFull") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_energy_full (object, value);
		return TRUE;
	} else if (strcmp (property_name, "EnergyFullDesign") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_energy_full_design (object, value);
		return TRUE;
	} else if (strcmp (property_name, "EnergyRate") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_energy_rate (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Luminosity") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_luminosity (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Percentage") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_percentage (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Temperature") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_temperature (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Voltage") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_voltage (object, value);
		return TRUE;
	} else if (strcmp (property_name, "TimeToEmpty") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_time_to_empty (object, value);
		return TRUE;
	} else if (strcmp (property_name, "TimeToFull") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_time_to_full (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Model") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_model (object, value);
		return TRUE;
	} else if (strcmp (property_name, "NativePath") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_native_path (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Serial") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_serial (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Vendor") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_vendor (object, value);
		return TRUE;
	} else if (strcmp (property_name, "State") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_state (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Technology") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_technology (object, value);
		return TRUE;
	} else if (strcmp (property_name, "Type") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_Type (object, value);
		return TRUE;
	} else if (strcmp (property_name, "UpdateTime") == 0) {
		_dbus_power_services_dbus_interfaces_device_set_update_time (object, value);
		return TRUE;
	}
	return FALSE;
}

guint
power_services_dbus_interfaces_device_register_object (gpointer object,
                                                       GDBusConnection* connection,
                                                       const gchar* path,
                                                       GError** error)
{
	guint result;
	gpointer *data;
	data = g_new (gpointer, 3);
	data[0] = g_object_ref (object);
	data[1] = g_object_ref (connection);
	data[2] = g_strdup (path);
	result = g_dbus_connection_register_object (connection, path, (GDBusInterfaceInfo *) (&_power_services_dbus_interfaces_device_dbus_interface_info), &_power_services_dbus_interfaces_device_dbus_interface_vtable, data, _power_services_dbus_interfaces_device_unregister_object, error);
	if (!result) {
		return 0;
	}
	return result;
}

static void
_power_services_dbus_interfaces_device_unregister_object (gpointer user_data)
{
	gpointer* data;
	data = user_data;
	g_object_unref (data[0]);
	g_object_unref (data[1]);
	g_free (data[2]);
	g_free (data);
}

