// Code generated by protoc-gen-go.
// source: github.com/google/battery-historian/pb/batterystats_proto/batterystats.proto
// DO NOT EDIT!

/*
Package batterystats is a generated protocol buffer package.

It is generated from these files:
	github.com/google/battery-historian/pb/batterystats_proto/batterystats.proto

It has these top-level messages:
	BatteryStats
*/
package batterystats

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import build "github.com/google/battery-historian/pb/build_proto"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
const _ = proto.ProtoPackageIsVersion1

type BatteryStats_AggregationType int32

const (
	// All of the data in the stats.
	BatteryStats_SINCE_CHARGED BatteryStats_AggregationType = 0
	// Only the last run in the stats.
	BatteryStats_LAST BatteryStats_AggregationType = 1
	// Only the current run in the stats.
	BatteryStats_CURRENT BatteryStats_AggregationType = 2
	// Only the run since the last time the device was unplugged in the stats.
	BatteryStats_SINCE_UNPLUGGED BatteryStats_AggregationType = 3
)

var BatteryStats_AggregationType_name = map[int32]string{
	0: "SINCE_CHARGED",
	1: "LAST",
	2: "CURRENT",
	3: "SINCE_UNPLUGGED",
}
var BatteryStats_AggregationType_value = map[string]int32{
	"SINCE_CHARGED":   0,
	"LAST":            1,
	"CURRENT":         2,
	"SINCE_UNPLUGGED": 3,
}

func (x BatteryStats_AggregationType) Enum() *BatteryStats_AggregationType {
	p := new(BatteryStats_AggregationType)
	*p = x
	return p
}
func (x BatteryStats_AggregationType) String() string {
	return proto.EnumName(BatteryStats_AggregationType_name, int32(x))
}
func (x *BatteryStats_AggregationType) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_AggregationType_value, data, "BatteryStats_AggregationType")
	if err != nil {
		return err
	}
	*x = BatteryStats_AggregationType(value)
	return nil
}
func (BatteryStats_AggregationType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0}
}

type BatteryStats_App_UserActivity_Name int32

const (
	BatteryStats_App_UserActivity_OTHER  BatteryStats_App_UserActivity_Name = 0
	BatteryStats_App_UserActivity_BUTTON BatteryStats_App_UserActivity_Name = 1
	BatteryStats_App_UserActivity_TOUCH  BatteryStats_App_UserActivity_Name = 2
)

var BatteryStats_App_UserActivity_Name_name = map[int32]string{
	0: "OTHER",
	1: "BUTTON",
	2: "TOUCH",
}
var BatteryStats_App_UserActivity_Name_value = map[string]int32{
	"OTHER":  0,
	"BUTTON": 1,
	"TOUCH":  2,
}

func (x BatteryStats_App_UserActivity_Name) Enum() *BatteryStats_App_UserActivity_Name {
	p := new(BatteryStats_App_UserActivity_Name)
	*p = x
	return p
}
func (x BatteryStats_App_UserActivity_Name) String() string {
	return proto.EnumName(BatteryStats_App_UserActivity_Name_name, int32(x))
}
func (x *BatteryStats_App_UserActivity_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_App_UserActivity_Name_value, data, "BatteryStats_App_UserActivity_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_App_UserActivity_Name(value)
	return nil
}
func (BatteryStats_App_UserActivity_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 14, 0}
}

type BatteryStats_System_BluetoothState_Name int32

const (
	BatteryStats_System_BluetoothState_INACTIVE BatteryStats_System_BluetoothState_Name = 0
	BatteryStats_System_BluetoothState_LOW      BatteryStats_System_BluetoothState_Name = 1
	BatteryStats_System_BluetoothState_MEDIUM   BatteryStats_System_BluetoothState_Name = 2
	BatteryStats_System_BluetoothState_HIGH     BatteryStats_System_BluetoothState_Name = 3
)

var BatteryStats_System_BluetoothState_Name_name = map[int32]string{
	0: "INACTIVE",
	1: "LOW",
	2: "MEDIUM",
	3: "HIGH",
}
var BatteryStats_System_BluetoothState_Name_value = map[string]int32{
	"INACTIVE": 0,
	"LOW":      1,
	"MEDIUM":   2,
	"HIGH":     3,
}

func (x BatteryStats_System_BluetoothState_Name) Enum() *BatteryStats_System_BluetoothState_Name {
	p := new(BatteryStats_System_BluetoothState_Name)
	*p = x
	return p
}
func (x BatteryStats_System_BluetoothState_Name) String() string {
	return proto.EnumName(BatteryStats_System_BluetoothState_Name_name, int32(x))
}
func (x *BatteryStats_System_BluetoothState_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_BluetoothState_Name_value, data, "BatteryStats_System_BluetoothState_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_BluetoothState_Name(value)
	return nil
}
func (BatteryStats_System_BluetoothState_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 3, 0}
}

type BatteryStats_System_DataConnection_Name int32

const (
	BatteryStats_System_DataConnection_NONE      BatteryStats_System_DataConnection_Name = 0
	BatteryStats_System_DataConnection_GPRS      BatteryStats_System_DataConnection_Name = 1
	BatteryStats_System_DataConnection_EDGE      BatteryStats_System_DataConnection_Name = 2
	BatteryStats_System_DataConnection_UMTS      BatteryStats_System_DataConnection_Name = 3
	BatteryStats_System_DataConnection_CDMA      BatteryStats_System_DataConnection_Name = 4
	BatteryStats_System_DataConnection_EVDO_0    BatteryStats_System_DataConnection_Name = 5
	BatteryStats_System_DataConnection_EVDO_A    BatteryStats_System_DataConnection_Name = 6
	BatteryStats_System_DataConnection_ONE_X_RTT BatteryStats_System_DataConnection_Name = 7
	BatteryStats_System_DataConnection_HSDPA     BatteryStats_System_DataConnection_Name = 8
	BatteryStats_System_DataConnection_HSUPA     BatteryStats_System_DataConnection_Name = 9
	BatteryStats_System_DataConnection_HSPA      BatteryStats_System_DataConnection_Name = 10
	BatteryStats_System_DataConnection_IDEN      BatteryStats_System_DataConnection_Name = 11
	BatteryStats_System_DataConnection_EVDO_B    BatteryStats_System_DataConnection_Name = 12
	BatteryStats_System_DataConnection_LTE       BatteryStats_System_DataConnection_Name = 13
	BatteryStats_System_DataConnection_EHRPD     BatteryStats_System_DataConnection_Name = 14
	BatteryStats_System_DataConnection_HSPAP     BatteryStats_System_DataConnection_Name = 15
	BatteryStats_System_DataConnection_OTHER     BatteryStats_System_DataConnection_Name = 16
)

var BatteryStats_System_DataConnection_Name_name = map[int32]string{
	0:  "NONE",
	1:  "GPRS",
	2:  "EDGE",
	3:  "UMTS",
	4:  "CDMA",
	5:  "EVDO_0",
	6:  "EVDO_A",
	7:  "ONE_X_RTT",
	8:  "HSDPA",
	9:  "HSUPA",
	10: "HSPA",
	11: "IDEN",
	12: "EVDO_B",
	13: "LTE",
	14: "EHRPD",
	15: "HSPAP",
	16: "OTHER",
}
var BatteryStats_System_DataConnection_Name_value = map[string]int32{
	"NONE":      0,
	"GPRS":      1,
	"EDGE":      2,
	"UMTS":      3,
	"CDMA":      4,
	"EVDO_0":    5,
	"EVDO_A":    6,
	"ONE_X_RTT": 7,
	"HSDPA":     8,
	"HSUPA":     9,
	"HSPA":      10,
	"IDEN":      11,
	"EVDO_B":    12,
	"LTE":       13,
	"EHRPD":     14,
	"HSPAP":     15,
	"OTHER":     16,
}

func (x BatteryStats_System_DataConnection_Name) Enum() *BatteryStats_System_DataConnection_Name {
	p := new(BatteryStats_System_DataConnection_Name)
	*p = x
	return p
}
func (x BatteryStats_System_DataConnection_Name) String() string {
	return proto.EnumName(BatteryStats_System_DataConnection_Name_name, int32(x))
}
func (x *BatteryStats_System_DataConnection_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_DataConnection_Name_value, data, "BatteryStats_System_DataConnection_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_DataConnection_Name(value)
	return nil
}
func (BatteryStats_System_DataConnection_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 5, 0}
}

type BatteryStats_System_DisplayState_State int32

const (
	BatteryStats_System_DisplayState_MIXED        BatteryStats_System_DisplayState_State = 0
	BatteryStats_System_DisplayState_ON           BatteryStats_System_DisplayState_State = 1
	BatteryStats_System_DisplayState_OFF          BatteryStats_System_DisplayState_State = 2
	BatteryStats_System_DisplayState_DOZE         BatteryStats_System_DisplayState_State = 3
	BatteryStats_System_DisplayState_DOZE_SUSPEND BatteryStats_System_DisplayState_State = 4
)

var BatteryStats_System_DisplayState_State_name = map[int32]string{
	0: "MIXED",
	1: "ON",
	2: "OFF",
	3: "DOZE",
	4: "DOZE_SUSPEND",
}
var BatteryStats_System_DisplayState_State_value = map[string]int32{
	"MIXED":        0,
	"ON":           1,
	"OFF":          2,
	"DOZE":         3,
	"DOZE_SUSPEND": 4,
}

func (x BatteryStats_System_DisplayState_State) Enum() *BatteryStats_System_DisplayState_State {
	p := new(BatteryStats_System_DisplayState_State)
	*p = x
	return p
}
func (x BatteryStats_System_DisplayState_State) String() string {
	return proto.EnumName(BatteryStats_System_DisplayState_State_name, int32(x))
}
func (x *BatteryStats_System_DisplayState_State) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_DisplayState_State_value, data, "BatteryStats_System_DisplayState_State")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_DisplayState_State(value)
	return nil
}
func (BatteryStats_System_DisplayState_State) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 7, 0}
}

type BatteryStats_System_IdleMode_Mode int32

const (
	// NO_DATA is intended for older reports that did not have an idle mode
	// section.
	BatteryStats_System_IdleMode_NO_DATA BatteryStats_System_IdleMode_Mode = 0
	BatteryStats_System_IdleMode_MIXED   BatteryStats_System_IdleMode_Mode = 1
	BatteryStats_System_IdleMode_ON      BatteryStats_System_IdleMode_Mode = 2
	BatteryStats_System_IdleMode_OFF     BatteryStats_System_IdleMode_Mode = 3
)

var BatteryStats_System_IdleMode_Mode_name = map[int32]string{
	0: "NO_DATA",
	1: "MIXED",
	2: "ON",
	3: "OFF",
}
var BatteryStats_System_IdleMode_Mode_value = map[string]int32{
	"NO_DATA": 0,
	"MIXED":   1,
	"ON":      2,
	"OFF":     3,
}

func (x BatteryStats_System_IdleMode_Mode) Enum() *BatteryStats_System_IdleMode_Mode {
	p := new(BatteryStats_System_IdleMode_Mode)
	*p = x
	return p
}
func (x BatteryStats_System_IdleMode_Mode) String() string {
	return proto.EnumName(BatteryStats_System_IdleMode_Mode_name, int32(x))
}
func (x *BatteryStats_System_IdleMode_Mode) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_IdleMode_Mode_value, data, "BatteryStats_System_IdleMode_Mode")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_IdleMode_Mode(value)
	return nil
}
func (BatteryStats_System_IdleMode_Mode) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 11, 0}
}

type BatteryStats_System_PowerSaveMode_Mode int32

const (
	BatteryStats_System_PowerSaveMode_MIXED BatteryStats_System_PowerSaveMode_Mode = 0
	BatteryStats_System_PowerSaveMode_ON    BatteryStats_System_PowerSaveMode_Mode = 1
	BatteryStats_System_PowerSaveMode_OFF   BatteryStats_System_PowerSaveMode_Mode = 2
)

var BatteryStats_System_PowerSaveMode_Mode_name = map[int32]string{
	0: "MIXED",
	1: "ON",
	2: "OFF",
}
var BatteryStats_System_PowerSaveMode_Mode_value = map[string]int32{
	"MIXED": 0,
	"ON":    1,
	"OFF":   2,
}

func (x BatteryStats_System_PowerSaveMode_Mode) Enum() *BatteryStats_System_PowerSaveMode_Mode {
	p := new(BatteryStats_System_PowerSaveMode_Mode)
	*p = x
	return p
}
func (x BatteryStats_System_PowerSaveMode_Mode) String() string {
	return proto.EnumName(BatteryStats_System_PowerSaveMode_Mode_name, int32(x))
}
func (x *BatteryStats_System_PowerSaveMode_Mode) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_PowerSaveMode_Mode_value, data, "BatteryStats_System_PowerSaveMode_Mode")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_PowerSaveMode_Mode(value)
	return nil
}
func (BatteryStats_System_PowerSaveMode_Mode) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 14, 0}
}

type BatteryStats_System_PowerUseItem_Name int32

const (
	BatteryStats_System_PowerUseItem_IDLE        BatteryStats_System_PowerUseItem_Name = 0
	BatteryStats_System_PowerUseItem_CELL        BatteryStats_System_PowerUseItem_Name = 1
	BatteryStats_System_PowerUseItem_PHONE       BatteryStats_System_PowerUseItem_Name = 2
	BatteryStats_System_PowerUseItem_WIFI        BatteryStats_System_PowerUseItem_Name = 3
	BatteryStats_System_PowerUseItem_BLUETOOTH   BatteryStats_System_PowerUseItem_Name = 4
	BatteryStats_System_PowerUseItem_SCREEN      BatteryStats_System_PowerUseItem_Name = 5
	BatteryStats_System_PowerUseItem_APP         BatteryStats_System_PowerUseItem_Name = 6
	BatteryStats_System_PowerUseItem_USER        BatteryStats_System_PowerUseItem_Name = 7
	BatteryStats_System_PowerUseItem_UNACCOUNTED BatteryStats_System_PowerUseItem_Name = 8
	BatteryStats_System_PowerUseItem_OVERCOUNTED BatteryStats_System_PowerUseItem_Name = 9
	BatteryStats_System_PowerUseItem_DEFAULT     BatteryStats_System_PowerUseItem_Name = 10
	BatteryStats_System_PowerUseItem_FLASHLIGHT  BatteryStats_System_PowerUseItem_Name = 11
)

var BatteryStats_System_PowerUseItem_Name_name = map[int32]string{
	0:  "IDLE",
	1:  "CELL",
	2:  "PHONE",
	3:  "WIFI",
	4:  "BLUETOOTH",
	5:  "SCREEN",
	6:  "APP",
	7:  "USER",
	8:  "UNACCOUNTED",
	9:  "OVERCOUNTED",
	10: "DEFAULT",
	11: "FLASHLIGHT",
}
var BatteryStats_System_PowerUseItem_Name_value = map[string]int32{
	"IDLE":        0,
	"CELL":        1,
	"PHONE":       2,
	"WIFI":        3,
	"BLUETOOTH":   4,
	"SCREEN":      5,
	"APP":         6,
	"USER":        7,
	"UNACCOUNTED": 8,
	"OVERCOUNTED": 9,
	"DEFAULT":     10,
	"FLASHLIGHT":  11,
}

func (x BatteryStats_System_PowerUseItem_Name) Enum() *BatteryStats_System_PowerUseItem_Name {
	p := new(BatteryStats_System_PowerUseItem_Name)
	*p = x
	return p
}
func (x BatteryStats_System_PowerUseItem_Name) String() string {
	return proto.EnumName(BatteryStats_System_PowerUseItem_Name_name, int32(x))
}
func (x *BatteryStats_System_PowerUseItem_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_PowerUseItem_Name_value, data, "BatteryStats_System_PowerUseItem_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_PowerUseItem_Name(value)
	return nil
}
func (BatteryStats_System_PowerUseItem_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 15, 0}
}

type BatteryStats_System_ScreenBrightness_Name int32

const (
	BatteryStats_System_ScreenBrightness_DARK   BatteryStats_System_ScreenBrightness_Name = 0
	BatteryStats_System_ScreenBrightness_DIM    BatteryStats_System_ScreenBrightness_Name = 1
	BatteryStats_System_ScreenBrightness_MEDIUM BatteryStats_System_ScreenBrightness_Name = 2
	BatteryStats_System_ScreenBrightness_LIGHT  BatteryStats_System_ScreenBrightness_Name = 3
	BatteryStats_System_ScreenBrightness_BRIGHT BatteryStats_System_ScreenBrightness_Name = 4
)

var BatteryStats_System_ScreenBrightness_Name_name = map[int32]string{
	0: "DARK",
	1: "DIM",
	2: "MEDIUM",
	3: "LIGHT",
	4: "BRIGHT",
}
var BatteryStats_System_ScreenBrightness_Name_value = map[string]int32{
	"DARK":   0,
	"DIM":    1,
	"MEDIUM": 2,
	"LIGHT":  3,
	"BRIGHT": 4,
}

func (x BatteryStats_System_ScreenBrightness_Name) Enum() *BatteryStats_System_ScreenBrightness_Name {
	p := new(BatteryStats_System_ScreenBrightness_Name)
	*p = x
	return p
}
func (x BatteryStats_System_ScreenBrightness_Name) String() string {
	return proto.EnumName(BatteryStats_System_ScreenBrightness_Name_name, int32(x))
}
func (x *BatteryStats_System_ScreenBrightness_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_ScreenBrightness_Name_value, data, "BatteryStats_System_ScreenBrightness_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_ScreenBrightness_Name(value)
	return nil
}
func (BatteryStats_System_ScreenBrightness_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 17, 0}
}

type BatteryStats_System_SignalStrength_Name int32

const (
	BatteryStats_System_SignalStrength_NONE_OR_UNKNOWN BatteryStats_System_SignalStrength_Name = 0
	BatteryStats_System_SignalStrength_POOR            BatteryStats_System_SignalStrength_Name = 1
	BatteryStats_System_SignalStrength_MODERATE        BatteryStats_System_SignalStrength_Name = 2
	BatteryStats_System_SignalStrength_GOOD            BatteryStats_System_SignalStrength_Name = 3
	BatteryStats_System_SignalStrength_GREAT           BatteryStats_System_SignalStrength_Name = 4
)

var BatteryStats_System_SignalStrength_Name_name = map[int32]string{
	0: "NONE_OR_UNKNOWN",
	1: "POOR",
	2: "MODERATE",
	3: "GOOD",
	4: "GREAT",
}
var BatteryStats_System_SignalStrength_Name_value = map[string]int32{
	"NONE_OR_UNKNOWN": 0,
	"POOR":            1,
	"MODERATE":        2,
	"GOOD":            3,
	"GREAT":           4,
}

func (x BatteryStats_System_SignalStrength_Name) Enum() *BatteryStats_System_SignalStrength_Name {
	p := new(BatteryStats_System_SignalStrength_Name)
	*p = x
	return p
}
func (x BatteryStats_System_SignalStrength_Name) String() string {
	return proto.EnumName(BatteryStats_System_SignalStrength_Name_name, int32(x))
}
func (x *BatteryStats_System_SignalStrength_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_SignalStrength_Name_value, data, "BatteryStats_System_SignalStrength_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_SignalStrength_Name(value)
	return nil
}
func (BatteryStats_System_SignalStrength_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 19, 0}
}

type BatteryStats_System_WifiSignalStrength_Name int32

const (
	BatteryStats_System_WifiSignalStrength_NONE     BatteryStats_System_WifiSignalStrength_Name = 0
	BatteryStats_System_WifiSignalStrength_POOR     BatteryStats_System_WifiSignalStrength_Name = 1
	BatteryStats_System_WifiSignalStrength_MODERATE BatteryStats_System_WifiSignalStrength_Name = 2
	BatteryStats_System_WifiSignalStrength_GOOD     BatteryStats_System_WifiSignalStrength_Name = 3
	BatteryStats_System_WifiSignalStrength_GREAT    BatteryStats_System_WifiSignalStrength_Name = 4
)

var BatteryStats_System_WifiSignalStrength_Name_name = map[int32]string{
	0: "NONE",
	1: "POOR",
	2: "MODERATE",
	3: "GOOD",
	4: "GREAT",
}
var BatteryStats_System_WifiSignalStrength_Name_value = map[string]int32{
	"NONE":     0,
	"POOR":     1,
	"MODERATE": 2,
	"GOOD":     3,
	"GREAT":    4,
}

func (x BatteryStats_System_WifiSignalStrength_Name) Enum() *BatteryStats_System_WifiSignalStrength_Name {
	p := new(BatteryStats_System_WifiSignalStrength_Name)
	*p = x
	return p
}
func (x BatteryStats_System_WifiSignalStrength_Name) String() string {
	return proto.EnumName(BatteryStats_System_WifiSignalStrength_Name_name, int32(x))
}
func (x *BatteryStats_System_WifiSignalStrength_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_WifiSignalStrength_Name_value, data, "BatteryStats_System_WifiSignalStrength_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_WifiSignalStrength_Name(value)
	return nil
}
func (BatteryStats_System_WifiSignalStrength_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 21, 0}
}

type BatteryStats_System_WifiSupplicantState_Name int32

const (
	BatteryStats_System_WifiSupplicantState_INVALID            BatteryStats_System_WifiSupplicantState_Name = 0
	BatteryStats_System_WifiSupplicantState_DISCONNECTED       BatteryStats_System_WifiSupplicantState_Name = 1
	BatteryStats_System_WifiSupplicantState_INTERFACE_DISABLED BatteryStats_System_WifiSupplicantState_Name = 2
	BatteryStats_System_WifiSupplicantState_INACTIVE           BatteryStats_System_WifiSupplicantState_Name = 3
	BatteryStats_System_WifiSupplicantState_SCANNING           BatteryStats_System_WifiSupplicantState_Name = 4
	BatteryStats_System_WifiSupplicantState_AUTHENTICATING     BatteryStats_System_WifiSupplicantState_Name = 5
	BatteryStats_System_WifiSupplicantState_ASSOCIATING        BatteryStats_System_WifiSupplicantState_Name = 6
	BatteryStats_System_WifiSupplicantState_ASSOCIATED         BatteryStats_System_WifiSupplicantState_Name = 7
	BatteryStats_System_WifiSupplicantState_FOUR_WAY_HANDSHAKE BatteryStats_System_WifiSupplicantState_Name = 8
	BatteryStats_System_WifiSupplicantState_GROUP_HANDSHAKE    BatteryStats_System_WifiSupplicantState_Name = 9
	BatteryStats_System_WifiSupplicantState_COMPLETED          BatteryStats_System_WifiSupplicantState_Name = 10
	BatteryStats_System_WifiSupplicantState_DORMANT            BatteryStats_System_WifiSupplicantState_Name = 11
	BatteryStats_System_WifiSupplicantState_UNINITIALIZED      BatteryStats_System_WifiSupplicantState_Name = 12
)

var BatteryStats_System_WifiSupplicantState_Name_name = map[int32]string{
	0:  "INVALID",
	1:  "DISCONNECTED",
	2:  "INTERFACE_DISABLED",
	3:  "INACTIVE",
	4:  "SCANNING",
	5:  "AUTHENTICATING",
	6:  "ASSOCIATING",
	7:  "ASSOCIATED",
	8:  "FOUR_WAY_HANDSHAKE",
	9:  "GROUP_HANDSHAKE",
	10: "COMPLETED",
	11: "DORMANT",
	12: "UNINITIALIZED",
}
var BatteryStats_System_WifiSupplicantState_Name_value = map[string]int32{
	"INVALID":            0,
	"DISCONNECTED":       1,
	"INTERFACE_DISABLED": 2,
	"INACTIVE":           3,
	"SCANNING":           4,
	"AUTHENTICATING":     5,
	"ASSOCIATING":        6,
	"ASSOCIATED":         7,
	"FOUR_WAY_HANDSHAKE": 8,
	"GROUP_HANDSHAKE":    9,
	"COMPLETED":          10,
	"DORMANT":            11,
	"UNINITIALIZED":      12,
}

func (x BatteryStats_System_WifiSupplicantState_Name) Enum() *BatteryStats_System_WifiSupplicantState_Name {
	p := new(BatteryStats_System_WifiSupplicantState_Name)
	*p = x
	return p
}
func (x BatteryStats_System_WifiSupplicantState_Name) String() string {
	return proto.EnumName(BatteryStats_System_WifiSupplicantState_Name_name, int32(x))
}
func (x *BatteryStats_System_WifiSupplicantState_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_WifiSupplicantState_Name_value, data, "BatteryStats_System_WifiSupplicantState_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_WifiSupplicantState_Name(value)
	return nil
}
func (BatteryStats_System_WifiSupplicantState_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 22, 0}
}

type BatteryStats_System_WifiState_Name int32

const (
	BatteryStats_System_WifiState_OFF                  BatteryStats_System_WifiState_Name = 0
	BatteryStats_System_WifiState_OFF_SCANNING         BatteryStats_System_WifiState_Name = 1
	BatteryStats_System_WifiState_ON_NO_NETWORKS       BatteryStats_System_WifiState_Name = 2
	BatteryStats_System_WifiState_ON_DISCONNECTED      BatteryStats_System_WifiState_Name = 3
	BatteryStats_System_WifiState_ON_CONNECTED_STA     BatteryStats_System_WifiState_Name = 4
	BatteryStats_System_WifiState_ON_CONNECTED_P2P     BatteryStats_System_WifiState_Name = 5
	BatteryStats_System_WifiState_ON_CONNECTED_STA_P2P BatteryStats_System_WifiState_Name = 6
	BatteryStats_System_WifiState_SOFT_AP              BatteryStats_System_WifiState_Name = 7
)

var BatteryStats_System_WifiState_Name_name = map[int32]string{
	0: "OFF",
	1: "OFF_SCANNING",
	2: "ON_NO_NETWORKS",
	3: "ON_DISCONNECTED",
	4: "ON_CONNECTED_STA",
	5: "ON_CONNECTED_P2P",
	6: "ON_CONNECTED_STA_P2P",
	7: "SOFT_AP",
}
var BatteryStats_System_WifiState_Name_value = map[string]int32{
	"OFF":                  0,
	"OFF_SCANNING":         1,
	"ON_NO_NETWORKS":       2,
	"ON_DISCONNECTED":      3,
	"ON_CONNECTED_STA":     4,
	"ON_CONNECTED_P2P":     5,
	"ON_CONNECTED_STA_P2P": 6,
	"SOFT_AP":              7,
}

func (x BatteryStats_System_WifiState_Name) Enum() *BatteryStats_System_WifiState_Name {
	p := new(BatteryStats_System_WifiState_Name)
	*p = x
	return p
}
func (x BatteryStats_System_WifiState_Name) String() string {
	return proto.EnumName(BatteryStats_System_WifiState_Name_name, int32(x))
}
func (x *BatteryStats_System_WifiState_Name) UnmarshalJSON(data []byte) error {
	value, err := proto.UnmarshalJSONEnum(BatteryStats_System_WifiState_Name_value, data, "BatteryStats_System_WifiState_Name")
	if err != nil {
		return err
	}
	*x = BatteryStats_System_WifiState_Name(value)
	return nil
}
func (BatteryStats_System_WifiState_Name) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 23, 0}
}

type BatteryStats struct {
	// Unique ID for the record. Concatenation of end_time_usec, shard, and the index in the shard.
	RecordId *string `protobuf:"bytes,1,opt,name=record_id" json:"record_id,omitempty"`
	// Encrypted android_id. Cleared for user/release-keys builds.
	AndroidIdx *string `protobuf:"bytes,2,opt,name=android_idx" json:"android_idx,omitempty"`
	// When aggregation starts.
	StartTimeUsec *int64 `protobuf:"varint,3,opt,name=start_time_usec" json:"start_time_usec,omitempty"`
	// When aggregation ends.
	EndTimeUsec *int64 `protobuf:"varint,4,opt,name=end_time_usec" json:"end_time_usec,omitempty"`
	// start_time_usec in "YYYY-MM-DD HH:MM:SS" (MTV time).
	StartTimeStr *string `protobuf:"bytes,5,opt,name=start_time_str" json:"start_time_str,omitempty"`
	// end_time_usec in "YYYY-MM-DD HH:MM:SS" (MTV time).
	EndTimeStr *string `protobuf:"bytes,6,opt,name=end_time_str" json:"end_time_str,omitempty"`
	// start_time_str in local time.
	LocalStartTimeStr *string `protobuf:"bytes,7,opt,name=local_start_time_str" json:"local_start_time_str,omitempty"`
	// end_time_str in local time.
	LocalEndTimeStr *string `protobuf:"bytes,8,opt,name=local_end_time_str" json:"local_end_time_str,omitempty"`
	// e.g., auto.googlefood.jellybean.
	DeviceGroup []string `protobuf:"bytes,9,rep,name=device_group" json:"device_group,omitempty"`
	// e.g., user-domain-google.com.
	CheckinRule []string `protobuf:"bytes,10,rep,name=checkin_rule" json:"checkin_rule,omitempty"`
	// True if it's Googler's data.
	IsGoogler *bool `protobuf:"varint,11,opt,name=is_googler" json:"is_googler,omitempty"`
	// True if it's user/release-keys.
	IsUserRelease *bool `protobuf:"varint,12,opt,name=is_user_release" json:"is_user_release,omitempty"`
	// Info from the build fingerprint.
	Build *build.Build `protobuf:"bytes,13,opt,name=build" json:"build,omitempty"`
	// Android SDK version.
	SdkVersion *int32 `protobuf:"varint,14,opt,name=sdk_version" json:"sdk_version,omitempty"`
	// GMS Core version.
	GmsVersion *int32 `protobuf:"varint,15,opt,name=gms_version" json:"gms_version,omitempty"`
	// System bootloader version.
	Bootloader *string `protobuf:"bytes,16,opt,name=bootloader" json:"bootloader,omitempty"`
	// Radio subsystem version.
	Radio *string `protobuf:"bytes,17,opt,name=radio" json:"radio,omitempty"`
	// e.g., Verizon Wireless/US.
	Carrier *string `protobuf:"bytes,18,opt,name=carrier" json:"carrier,omitempty"`
	// e.g., US.
	CountryCode *string `protobuf:"bytes,19,opt,name=country_code" json:"country_code,omitempty"`
	// e.g., America/Los_Angeles.
	TimeZone *string `protobuf:"bytes,20,opt,name=time_zone" json:"time_zone,omitempty"`
	// Checkin report version.
	ReportVersion *int32 `protobuf:"varint,21,opt,name=report_version" json:"report_version,omitempty"`
	// True for the original report.
	IsOriginal *bool `protobuf:"varint,22,opt,name=is_original" json:"is_original,omitempty"`
	// True for the latest report among originals sharing start_clock_time_msec.
	IsLatest *bool `protobuf:"varint,23,opt,name=is_latest" json:"is_latest,omitempty"`
	// True for the report generated from diff between originals or if such
	// operation does not make sense. Note is_original and is_diff are not
	// mutually exclusive.
	IsDiff *bool `protobuf:"varint,24,opt,name=is_diff" json:"is_diff,omitempty"`
	// True if the android wear device is paired to an ALT mode companion on iPhone.
	IsAltMode *bool `protobuf:"varint,28,opt,name=is_alt_mode" json:"is_alt_mode,omitempty"`
	// Warnings generated when parsing the report.
	Warning []string `protobuf:"bytes,29,rep,name=warning" json:"warning,omitempty"`
	// Errors generated when parsing the report.
	Error            []string                      `protobuf:"bytes,30,rep,name=error" json:"error,omitempty"`
	AggregationType  *BatteryStats_AggregationType `protobuf:"varint,25,opt,name=aggregation_type,enum=batterystats.BatteryStats_AggregationType" json:"aggregation_type,omitempty"`
	App              []*BatteryStats_App           `protobuf:"bytes,26,rep,name=app" json:"app,omitempty"`
	System           *BatteryStats_System          `protobuf:"bytes,27,opt,name=system" json:"system,omitempty"`
	XXX_unrecognized []byte                        `json:"-"`
}

func (m *BatteryStats) Reset()                    { *m = BatteryStats{} }
func (m *BatteryStats) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats) ProtoMessage()               {}
func (*BatteryStats) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }

func (m *BatteryStats) GetRecordId() string {
	if m != nil && m.RecordId != nil {
		return *m.RecordId
	}
	return ""
}

func (m *BatteryStats) GetAndroidIdx() string {
	if m != nil && m.AndroidIdx != nil {
		return *m.AndroidIdx
	}
	return ""
}

func (m *BatteryStats) GetStartTimeUsec() int64 {
	if m != nil && m.StartTimeUsec != nil {
		return *m.StartTimeUsec
	}
	return 0
}

func (m *BatteryStats) GetEndTimeUsec() int64 {
	if m != nil && m.EndTimeUsec != nil {
		return *m.EndTimeUsec
	}
	return 0
}

func (m *BatteryStats) GetStartTimeStr() string {
	if m != nil && m.StartTimeStr != nil {
		return *m.StartTimeStr
	}
	return ""
}

func (m *BatteryStats) GetEndTimeStr() string {
	if m != nil && m.EndTimeStr != nil {
		return *m.EndTimeStr
	}
	return ""
}

func (m *BatteryStats) GetLocalStartTimeStr() string {
	if m != nil && m.LocalStartTimeStr != nil {
		return *m.LocalStartTimeStr
	}
	return ""
}

func (m *BatteryStats) GetLocalEndTimeStr() string {
	if m != nil && m.LocalEndTimeStr != nil {
		return *m.LocalEndTimeStr
	}
	return ""
}

func (m *BatteryStats) GetDeviceGroup() []string {
	if m != nil {
		return m.DeviceGroup
	}
	return nil
}

func (m *BatteryStats) GetCheckinRule() []string {
	if m != nil {
		return m.CheckinRule
	}
	return nil
}

func (m *BatteryStats) GetIsGoogler() bool {
	if m != nil && m.IsGoogler != nil {
		return *m.IsGoogler
	}
	return false
}

func (m *BatteryStats) GetIsUserRelease() bool {
	if m != nil && m.IsUserRelease != nil {
		return *m.IsUserRelease
	}
	return false
}

func (m *BatteryStats) GetBuild() *build.Build {
	if m != nil {
		return m.Build
	}
	return nil
}

func (m *BatteryStats) GetSdkVersion() int32 {
	if m != nil && m.SdkVersion != nil {
		return *m.SdkVersion
	}
	return 0
}

func (m *BatteryStats) GetGmsVersion() int32 {
	if m != nil && m.GmsVersion != nil {
		return *m.GmsVersion
	}
	return 0
}

func (m *BatteryStats) GetBootloader() string {
	if m != nil && m.Bootloader != nil {
		return *m.Bootloader
	}
	return ""
}

func (m *BatteryStats) GetRadio() string {
	if m != nil && m.Radio != nil {
		return *m.Radio
	}
	return ""
}

func (m *BatteryStats) GetCarrier() string {
	if m != nil && m.Carrier != nil {
		return *m.Carrier
	}
	return ""
}

func (m *BatteryStats) GetCountryCode() string {
	if m != nil && m.CountryCode != nil {
		return *m.CountryCode
	}
	return ""
}

func (m *BatteryStats) GetTimeZone() string {
	if m != nil && m.TimeZone != nil {
		return *m.TimeZone
	}
	return ""
}

func (m *BatteryStats) GetReportVersion() int32 {
	if m != nil && m.ReportVersion != nil {
		return *m.ReportVersion
	}
	return 0
}

func (m *BatteryStats) GetIsOriginal() bool {
	if m != nil && m.IsOriginal != nil {
		return *m.IsOriginal
	}
	return false
}

func (m *BatteryStats) GetIsLatest() bool {
	if m != nil && m.IsLatest != nil {
		return *m.IsLatest
	}
	return false
}

func (m *BatteryStats) GetIsDiff() bool {
	if m != nil && m.IsDiff != nil {
		return *m.IsDiff
	}
	return false
}

func (m *BatteryStats) GetIsAltMode() bool {
	if m != nil && m.IsAltMode != nil {
		return *m.IsAltMode
	}
	return false
}

func (m *BatteryStats) GetWarning() []string {
	if m != nil {
		return m.Warning
	}
	return nil
}

func (m *BatteryStats) GetError() []string {
	if m != nil {
		return m.Error
	}
	return nil
}

func (m *BatteryStats) GetAggregationType() BatteryStats_AggregationType {
	if m != nil && m.AggregationType != nil {
		return *m.AggregationType
	}
	return BatteryStats_SINCE_CHARGED
}

func (m *BatteryStats) GetApp() []*BatteryStats_App {
	if m != nil {
		return m.App
	}
	return nil
}

func (m *BatteryStats) GetSystem() *BatteryStats_System {
	if m != nil {
		return m.System
	}
	return nil
}

// Data collected about a single UID.
type BatteryStats_App struct {
	// e.g., com.google.android.gms.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// e.g., 4224038.
	VersionCode *int32 `protobuf:"varint,2,opt,name=version_code" json:"version_code,omitempty"`
	// e.g., 1000.
	Uid *int32 `protobuf:"varint,3,opt,name=uid" json:"uid,omitempty"`
	// e.g. 1.3
	VersionName *string                   `protobuf:"bytes,24,opt,name=version_name" json:"version_name,omitempty"`
	Child       []*BatteryStats_App_Child `protobuf:"bytes,13,rep,name=child" json:"child,omitempty"`
	// For the most important child (to make it easy to query by dremel).
	// e.g., gms for Google Services.
	HeadChild           *BatteryStats_App_Child          `protobuf:"bytes,18,opt,name=head_child" json:"head_child,omitempty"`
	Apk                 *BatteryStats_App_Apk            `protobuf:"bytes,4,opt,name=apk" json:"apk,omitempty"`
	Audio               *BatteryStats_App_Audio          `protobuf:"bytes,19,opt,name=audio" json:"audio,omitempty"`
	BluetoothController *BatteryStats_ControllerActivity `protobuf:"bytes,25,opt,name=bluetooth_controller" json:"bluetooth_controller,omitempty"`
	Camera              *BatteryStats_App_Camera         `protobuf:"bytes,20,opt,name=camera" json:"camera,omitempty"`
	Cpu                 *BatteryStats_App_Cpu            `protobuf:"bytes,23,opt,name=cpu" json:"cpu,omitempty"`
	Flashlight          *BatteryStats_App_Flashlight     `protobuf:"bytes,21,opt,name=flashlight" json:"flashlight,omitempty"`
	Foreground          *BatteryStats_App_Foreground     `protobuf:"bytes,5,opt,name=foreground" json:"foreground,omitempty"`
	ModemController     *BatteryStats_ControllerActivity `protobuf:"bytes,26,opt,name=modem_controller" json:"modem_controller,omitempty"`
	Network             *BatteryStats_App_Network        `protobuf:"bytes,6,opt,name=network" json:"network,omitempty"`
	PowerUseItem        *BatteryStats_App_PowerUseItem   `protobuf:"bytes,7,opt,name=power_use_item" json:"power_use_item,omitempty"`
	Process             []*BatteryStats_App_Process      `protobuf:"bytes,8,rep,name=process" json:"process,omitempty"`
	ScheduledJob        []*BatteryStats_App_ScheduledJob `protobuf:"bytes,14,rep,name=scheduled_job" json:"scheduled_job,omitempty"`
	Sensor              []*BatteryStats_App_Sensor       `protobuf:"bytes,9,rep,name=sensor" json:"sensor,omitempty"`
	StateTime           *BatteryStats_App_StateTime      `protobuf:"bytes,15,opt,name=state_time" json:"state_time,omitempty"`
	Sync                []*BatteryStats_App_Sync         `protobuf:"bytes,16,rep,name=sync" json:"sync,omitempty"`
	UserActivity        []*BatteryStats_App_UserActivity `protobuf:"bytes,17,rep,name=user_activity" json:"user_activity,omitempty"`
	Vibrator            *BatteryStats_App_Vibrator       `protobuf:"bytes,10,opt,name=vibrator" json:"vibrator,omitempty"`
	Video               *BatteryStats_App_Video          `protobuf:"bytes,22,opt,name=video" json:"video,omitempty"`
	Wakelock            []*BatteryStats_App_Wakelock     `protobuf:"bytes,11,rep,name=wakelock" json:"wakelock,omitempty"`
	Wifi                *BatteryStats_App_Wifi           `protobuf:"bytes,12,opt,name=wifi" json:"wifi,omitempty"`
	WifiController      *BatteryStats_ControllerActivity `protobuf:"bytes,27,opt,name=wifi_controller" json:"wifi_controller,omitempty"`
	XXX_unrecognized    []byte                           `json:"-"`
}

func (m *BatteryStats_App) Reset()                    { *m = BatteryStats_App{} }
func (m *BatteryStats_App) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App) ProtoMessage()               {}
func (*BatteryStats_App) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0} }

func (m *BatteryStats_App) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App) GetVersionCode() int32 {
	if m != nil && m.VersionCode != nil {
		return *m.VersionCode
	}
	return 0
}

func (m *BatteryStats_App) GetUid() int32 {
	if m != nil && m.Uid != nil {
		return *m.Uid
	}
	return 0
}

func (m *BatteryStats_App) GetVersionName() string {
	if m != nil && m.VersionName != nil {
		return *m.VersionName
	}
	return ""
}

func (m *BatteryStats_App) GetChild() []*BatteryStats_App_Child {
	if m != nil {
		return m.Child
	}
	return nil
}

func (m *BatteryStats_App) GetHeadChild() *BatteryStats_App_Child {
	if m != nil {
		return m.HeadChild
	}
	return nil
}

func (m *BatteryStats_App) GetApk() *BatteryStats_App_Apk {
	if m != nil {
		return m.Apk
	}
	return nil
}

func (m *BatteryStats_App) GetAudio() *BatteryStats_App_Audio {
	if m != nil {
		return m.Audio
	}
	return nil
}

func (m *BatteryStats_App) GetBluetoothController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.BluetoothController
	}
	return nil
}

func (m *BatteryStats_App) GetCamera() *BatteryStats_App_Camera {
	if m != nil {
		return m.Camera
	}
	return nil
}

func (m *BatteryStats_App) GetCpu() *BatteryStats_App_Cpu {
	if m != nil {
		return m.Cpu
	}
	return nil
}

func (m *BatteryStats_App) GetFlashlight() *BatteryStats_App_Flashlight {
	if m != nil {
		return m.Flashlight
	}
	return nil
}

func (m *BatteryStats_App) GetForeground() *BatteryStats_App_Foreground {
	if m != nil {
		return m.Foreground
	}
	return nil
}

func (m *BatteryStats_App) GetModemController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.ModemController
	}
	return nil
}

func (m *BatteryStats_App) GetNetwork() *BatteryStats_App_Network {
	if m != nil {
		return m.Network
	}
	return nil
}

func (m *BatteryStats_App) GetPowerUseItem() *BatteryStats_App_PowerUseItem {
	if m != nil {
		return m.PowerUseItem
	}
	return nil
}

func (m *BatteryStats_App) GetProcess() []*BatteryStats_App_Process {
	if m != nil {
		return m.Process
	}
	return nil
}

func (m *BatteryStats_App) GetScheduledJob() []*BatteryStats_App_ScheduledJob {
	if m != nil {
		return m.ScheduledJob
	}
	return nil
}

func (m *BatteryStats_App) GetSensor() []*BatteryStats_App_Sensor {
	if m != nil {
		return m.Sensor
	}
	return nil
}

func (m *BatteryStats_App) GetStateTime() *BatteryStats_App_StateTime {
	if m != nil {
		return m.StateTime
	}
	return nil
}

func (m *BatteryStats_App) GetSync() []*BatteryStats_App_Sync {
	if m != nil {
		return m.Sync
	}
	return nil
}

func (m *BatteryStats_App) GetUserActivity() []*BatteryStats_App_UserActivity {
	if m != nil {
		return m.UserActivity
	}
	return nil
}

func (m *BatteryStats_App) GetVibrator() *BatteryStats_App_Vibrator {
	if m != nil {
		return m.Vibrator
	}
	return nil
}

func (m *BatteryStats_App) GetVideo() *BatteryStats_App_Video {
	if m != nil {
		return m.Video
	}
	return nil
}

func (m *BatteryStats_App) GetWakelock() []*BatteryStats_App_Wakelock {
	if m != nil {
		return m.Wakelock
	}
	return nil
}

func (m *BatteryStats_App) GetWifi() *BatteryStats_App_Wifi {
	if m != nil {
		return m.Wifi
	}
	return nil
}

func (m *BatteryStats_App) GetWifiController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.WifiController
	}
	return nil
}

// List of packages sharing the UID. (e.g., gms, gsf for Google Services)
type BatteryStats_App_Child struct {
	Name             *string               `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	VersionCode      *int32                `protobuf:"varint,2,opt,name=version_code" json:"version_code,omitempty"`
	VersionName      *string               `protobuf:"bytes,3,opt,name=version_name" json:"version_name,omitempty"`
	Apk              *BatteryStats_App_Apk `protobuf:"bytes,4,opt,name=apk" json:"apk,omitempty"`
	XXX_unrecognized []byte                `json:"-"`
}

func (m *BatteryStats_App_Child) Reset()                    { *m = BatteryStats_App_Child{} }
func (m *BatteryStats_App_Child) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Child) ProtoMessage()               {}
func (*BatteryStats_App_Child) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 0} }

func (m *BatteryStats_App_Child) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_Child) GetVersionCode() int32 {
	if m != nil && m.VersionCode != nil {
		return *m.VersionCode
	}
	return 0
}

func (m *BatteryStats_App_Child) GetVersionName() string {
	if m != nil && m.VersionName != nil {
		return *m.VersionName
	}
	return ""
}

func (m *BatteryStats_App_Child) GetApk() *BatteryStats_App_Apk {
	if m != nil {
		return m.Apk
	}
	return nil
}

type BatteryStats_App_Apk struct {
	// #wakeup alarms that executed. Not int because some packages share the UID.
	Wakeups          *float32                        `protobuf:"fixed32,1,opt,name=wakeups" json:"wakeups,omitempty"`
	Service          []*BatteryStats_App_Apk_Service `protobuf:"bytes,2,rep,name=service" json:"service,omitempty"`
	XXX_unrecognized []byte                          `json:"-"`
}

func (m *BatteryStats_App_Apk) Reset()                    { *m = BatteryStats_App_Apk{} }
func (m *BatteryStats_App_Apk) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Apk) ProtoMessage()               {}
func (*BatteryStats_App_Apk) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 1} }

func (m *BatteryStats_App_Apk) GetWakeups() float32 {
	if m != nil && m.Wakeups != nil {
		return *m.Wakeups
	}
	return 0
}

func (m *BatteryStats_App_Apk) GetService() []*BatteryStats_App_Apk_Service {
	if m != nil {
		return m.Service
	}
	return nil
}

type BatteryStats_App_Apk_Service struct {
	// e.g., com.google.android.gms.icing.service.IndexService.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Time spent started.
	StartTimeMsec *float32 `protobuf:"fixed32,2,opt,name=start_time_msec" json:"start_time_msec,omitempty"`
	// #times it was started.
	Starts *float32 `protobuf:"fixed32,3,opt,name=starts" json:"starts,omitempty"`
	// #times it was launched.
	Launches         *float32 `protobuf:"fixed32,4,opt,name=launches" json:"launches,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Apk_Service) Reset()         { *m = BatteryStats_App_Apk_Service{} }
func (m *BatteryStats_App_Apk_Service) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_Apk_Service) ProtoMessage()    {}
func (*BatteryStats_App_Apk_Service) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 1, 0}
}

func (m *BatteryStats_App_Apk_Service) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_Apk_Service) GetStartTimeMsec() float32 {
	if m != nil && m.StartTimeMsec != nil {
		return *m.StartTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Apk_Service) GetStarts() float32 {
	if m != nil && m.Starts != nil {
		return *m.Starts
	}
	return 0
}

func (m *BatteryStats_App_Apk_Service) GetLaunches() float32 {
	if m != nil && m.Launches != nil {
		return *m.Launches
	}
	return 0
}

type BatteryStats_App_Audio struct {
	// Duration spent running audio.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Audio) Reset()                    { *m = BatteryStats_App_Audio{} }
func (m *BatteryStats_App_Audio) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Audio) ProtoMessage()               {}
func (*BatteryStats_App_Audio) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 2} }

func (m *BatteryStats_App_Audio) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Audio) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Camera struct {
	// Duration spent running camera.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Camera) Reset()                    { *m = BatteryStats_App_Camera{} }
func (m *BatteryStats_App_Camera) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Camera) ProtoMessage()               {}
func (*BatteryStats_App_Camera) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 3} }

func (m *BatteryStats_App_Camera) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Camera) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Cpu struct {
	// Total CPU time with processes executing in userspace.
	UserTimeMs *float32 `protobuf:"fixed32,1,opt,name=user_time_ms" json:"user_time_ms,omitempty"`
	// Total CPU time with processes executing kernel syscalls.
	SystemTimeMs *float32 `protobuf:"fixed32,2,opt,name=system_time_ms" json:"system_time_ms,omitempty"`
	// Total CPU power consumed in milli-ampere-milliseconds.
	PowerMaMs        *float32 `protobuf:"fixed32,3,opt,name=power_ma_ms" json:"power_ma_ms,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Cpu) Reset()                    { *m = BatteryStats_App_Cpu{} }
func (m *BatteryStats_App_Cpu) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Cpu) ProtoMessage()               {}
func (*BatteryStats_App_Cpu) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 4} }

func (m *BatteryStats_App_Cpu) GetUserTimeMs() float32 {
	if m != nil && m.UserTimeMs != nil {
		return *m.UserTimeMs
	}
	return 0
}

func (m *BatteryStats_App_Cpu) GetSystemTimeMs() float32 {
	if m != nil && m.SystemTimeMs != nil {
		return *m.SystemTimeMs
	}
	return 0
}

func (m *BatteryStats_App_Cpu) GetPowerMaMs() float32 {
	if m != nil && m.PowerMaMs != nil {
		return *m.PowerMaMs
	}
	return 0
}

type BatteryStats_App_Flashlight struct {
	// Duration spent running flashlight.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Flashlight) Reset()         { *m = BatteryStats_App_Flashlight{} }
func (m *BatteryStats_App_Flashlight) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_Flashlight) ProtoMessage()    {}
func (*BatteryStats_App_Flashlight) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 5}
}

func (m *BatteryStats_App_Flashlight) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Flashlight) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Foreground struct {
	// Duration spent running as foreground activity.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Foreground) Reset()         { *m = BatteryStats_App_Foreground{} }
func (m *BatteryStats_App_Foreground) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_Foreground) ProtoMessage()    {}
func (*BatteryStats_App_Foreground) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 6}
}

func (m *BatteryStats_App_Foreground) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Foreground) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Network struct {
	// Mobile data traffic.
	MobileBytesRx *float32 `protobuf:"fixed32,1,opt,name=mobile_bytes_rx" json:"mobile_bytes_rx,omitempty"`
	MobileBytesTx *float32 `protobuf:"fixed32,2,opt,name=mobile_bytes_tx" json:"mobile_bytes_tx,omitempty"`
	// Wifi data traffic.
	WifiBytesRx *float32 `protobuf:"fixed32,3,opt,name=wifi_bytes_rx" json:"wifi_bytes_rx,omitempty"`
	WifiBytesTx *float32 `protobuf:"fixed32,4,opt,name=wifi_bytes_tx" json:"wifi_bytes_tx,omitempty"`
	// In packets.
	MobilePacketsRx *float32 `protobuf:"fixed32,5,opt,name=mobile_packets_rx" json:"mobile_packets_rx,omitempty"`
	MobilePacketsTx *float32 `protobuf:"fixed32,6,opt,name=mobile_packets_tx" json:"mobile_packets_tx,omitempty"`
	WifiPacketsRx   *float32 `protobuf:"fixed32,7,opt,name=wifi_packets_rx" json:"wifi_packets_rx,omitempty"`
	WifiPacketsTx   *float32 `protobuf:"fixed32,8,opt,name=wifi_packets_tx" json:"wifi_packets_tx,omitempty"`
	// Radio active duration.
	MobileActiveTimeMsec *float32 `protobuf:"fixed32,9,opt,name=mobile_active_time_msec" json:"mobile_active_time_msec,omitempty"`
	MobileActiveCount    *float32 `protobuf:"fixed32,10,opt,name=mobile_active_count" json:"mobile_active_count,omitempty"`
	BtBytesRx            *int64   `protobuf:"varint,11,opt,name=bt_bytes_rx" json:"bt_bytes_rx,omitempty"`
	BtBytesTx            *int64   `protobuf:"varint,12,opt,name=bt_bytes_tx" json:"bt_bytes_tx,omitempty"`
	XXX_unrecognized     []byte   `json:"-"`
}

func (m *BatteryStats_App_Network) Reset()                    { *m = BatteryStats_App_Network{} }
func (m *BatteryStats_App_Network) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Network) ProtoMessage()               {}
func (*BatteryStats_App_Network) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 7} }

func (m *BatteryStats_App_Network) GetMobileBytesRx() float32 {
	if m != nil && m.MobileBytesRx != nil {
		return *m.MobileBytesRx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetMobileBytesTx() float32 {
	if m != nil && m.MobileBytesTx != nil {
		return *m.MobileBytesTx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetWifiBytesRx() float32 {
	if m != nil && m.WifiBytesRx != nil {
		return *m.WifiBytesRx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetWifiBytesTx() float32 {
	if m != nil && m.WifiBytesTx != nil {
		return *m.WifiBytesTx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetMobilePacketsRx() float32 {
	if m != nil && m.MobilePacketsRx != nil {
		return *m.MobilePacketsRx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetMobilePacketsTx() float32 {
	if m != nil && m.MobilePacketsTx != nil {
		return *m.MobilePacketsTx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetWifiPacketsRx() float32 {
	if m != nil && m.WifiPacketsRx != nil {
		return *m.WifiPacketsRx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetWifiPacketsTx() float32 {
	if m != nil && m.WifiPacketsTx != nil {
		return *m.WifiPacketsTx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetMobileActiveTimeMsec() float32 {
	if m != nil && m.MobileActiveTimeMsec != nil {
		return *m.MobileActiveTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Network) GetMobileActiveCount() float32 {
	if m != nil && m.MobileActiveCount != nil {
		return *m.MobileActiveCount
	}
	return 0
}

func (m *BatteryStats_App_Network) GetBtBytesRx() int64 {
	if m != nil && m.BtBytesRx != nil {
		return *m.BtBytesRx
	}
	return 0
}

func (m *BatteryStats_App_Network) GetBtBytesTx() int64 {
	if m != nil && m.BtBytesTx != nil {
		return *m.BtBytesTx
	}
	return 0
}

// APP only. See System.PowerUseItem for others.
type BatteryStats_App_PowerUseItem struct {
	// Estimated power use in mAh.
	ComputedPowerMah *float32 `protobuf:"fixed32,1,opt,name=computed_power_mah" json:"computed_power_mah,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_PowerUseItem) Reset()         { *m = BatteryStats_App_PowerUseItem{} }
func (m *BatteryStats_App_PowerUseItem) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_PowerUseItem) ProtoMessage()    {}
func (*BatteryStats_App_PowerUseItem) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 8}
}

func (m *BatteryStats_App_PowerUseItem) GetComputedPowerMah() float32 {
	if m != nil && m.ComputedPowerMah != nil {
		return *m.ComputedPowerMah
	}
	return 0
}

type BatteryStats_App_Process struct {
	// e.g., com.google.process.location.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Time spent executing in user code.
	UserTimeMsec *float32 `protobuf:"fixed32,2,opt,name=user_time_msec" json:"user_time_msec,omitempty"`
	// Time in system code.
	SystemTimeMsec *float32 `protobuf:"fixed32,3,opt,name=system_time_msec" json:"system_time_msec,omitempty"`
	// Time in the foreground.
	ForegroundTimeMsec *float32 `protobuf:"fixed32,4,opt,name=foreground_time_msec" json:"foreground_time_msec,omitempty"`
	// #times the process has been started.
	Starts *float32 `protobuf:"fixed32,5,opt,name=starts" json:"starts,omitempty"`
	// #times the process has ANRed.
	Anrs *float32 `protobuf:"fixed32,6,opt,name=anrs" json:"anrs,omitempty"`
	// #times the process has crashed.
	Crashes          *float32 `protobuf:"fixed32,7,opt,name=crashes" json:"crashes,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Process) Reset()                    { *m = BatteryStats_App_Process{} }
func (m *BatteryStats_App_Process) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Process) ProtoMessage()               {}
func (*BatteryStats_App_Process) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 9} }

func (m *BatteryStats_App_Process) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_Process) GetUserTimeMsec() float32 {
	if m != nil && m.UserTimeMsec != nil {
		return *m.UserTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Process) GetSystemTimeMsec() float32 {
	if m != nil && m.SystemTimeMsec != nil {
		return *m.SystemTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Process) GetForegroundTimeMsec() float32 {
	if m != nil && m.ForegroundTimeMsec != nil {
		return *m.ForegroundTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Process) GetStarts() float32 {
	if m != nil && m.Starts != nil {
		return *m.Starts
	}
	return 0
}

func (m *BatteryStats_App_Process) GetAnrs() float32 {
	if m != nil && m.Anrs != nil {
		return *m.Anrs
	}
	return 0
}

func (m *BatteryStats_App_Process) GetCrashes() float32 {
	if m != nil && m.Crashes != nil {
		return *m.Crashes
	}
	return 0
}

type BatteryStats_App_ScheduledJob struct {
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Duration of use.
	TotalTimeMsec *float32 `protobuf:"fixed32,2,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times of use.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_ScheduledJob) Reset()         { *m = BatteryStats_App_ScheduledJob{} }
func (m *BatteryStats_App_ScheduledJob) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_ScheduledJob) ProtoMessage()    {}
func (*BatteryStats_App_ScheduledJob) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 10}
}

func (m *BatteryStats_App_ScheduledJob) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_ScheduledJob) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_ScheduledJob) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Sensor struct {
	// e.g., 24 (significant motion detector).
	Number *int32 `protobuf:"varint,1,opt,name=number" json:"number,omitempty"`
	// Duration of use.
	TotalTimeMsec *float32 `protobuf:"fixed32,2,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times of use.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Sensor) Reset()                    { *m = BatteryStats_App_Sensor{} }
func (m *BatteryStats_App_Sensor) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Sensor) ProtoMessage()               {}
func (*BatteryStats_App_Sensor) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 11} }

func (m *BatteryStats_App_Sensor) GetNumber() int32 {
	if m != nil && m.Number != nil {
		return *m.Number
	}
	return 0
}

func (m *BatteryStats_App_Sensor) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Sensor) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_StateTime struct {
	// Time the uid had any processes in foreground state.
	ForegroundTimeMsec *float32 `protobuf:"fixed32,1,opt,name=foreground_time_msec" json:"foreground_time_msec,omitempty"`
	// Time the uid had any process in active state (not cached).
	// Deprecated as of report version 17.
	ActiveTimeMsec *float32 `protobuf:"fixed32,2,opt,name=active_time_msec" json:"active_time_msec,omitempty"`
	// Time the uid had any processes running at all.
	CachedTimeMsec *float32 `protobuf:"fixed32,3,opt,name=cached_time_msec" json:"cached_time_msec,omitempty"`
	// Time the uid had any processes in the top state.
	TopTimeMsec *int64 `protobuf:"varint,4,opt,name=top_time_msec" json:"top_time_msec,omitempty"`
	// Time the uid had any process with a started out bound foreground
	// service.
	ForegroundServiceTimeMsec *int64 `protobuf:"varint,5,opt,name=foreground_service_time_msec" json:"foreground_service_time_msec,omitempty"`
	// Time the uid had any process that is top while the device was sleeping.
	// Sleeping is mostly screen off, but also includes the the time when the
	// screen is on but the device has not yet been unlocked.
	TopSleepingTimeMsec *int64 `protobuf:"varint,6,opt,name=top_sleeping_time_msec" json:"top_sleeping_time_msec,omitempty"`
	// Time the uid had any process in an active background state.
	BackgroundTimeMsec *int64 `protobuf:"varint,7,opt,name=background_time_msec" json:"background_time_msec,omitempty"`
	XXX_unrecognized   []byte `json:"-"`
}

func (m *BatteryStats_App_StateTime) Reset()         { *m = BatteryStats_App_StateTime{} }
func (m *BatteryStats_App_StateTime) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_StateTime) ProtoMessage()    {}
func (*BatteryStats_App_StateTime) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 12}
}

func (m *BatteryStats_App_StateTime) GetForegroundTimeMsec() float32 {
	if m != nil && m.ForegroundTimeMsec != nil {
		return *m.ForegroundTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetActiveTimeMsec() float32 {
	if m != nil && m.ActiveTimeMsec != nil {
		return *m.ActiveTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetCachedTimeMsec() float32 {
	if m != nil && m.CachedTimeMsec != nil {
		return *m.CachedTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetTopTimeMsec() int64 {
	if m != nil && m.TopTimeMsec != nil {
		return *m.TopTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetForegroundServiceTimeMsec() int64 {
	if m != nil && m.ForegroundServiceTimeMsec != nil {
		return *m.ForegroundServiceTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetTopSleepingTimeMsec() int64 {
	if m != nil && m.TopSleepingTimeMsec != nil {
		return *m.TopSleepingTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_StateTime) GetBackgroundTimeMsec() int64 {
	if m != nil && m.BackgroundTimeMsec != nil {
		return *m.BackgroundTimeMsec
	}
	return 0
}

type BatteryStats_App_Sync struct {
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Duration of use.
	TotalTimeMsec *float32 `protobuf:"fixed32,2,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times of use.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Sync) Reset()                    { *m = BatteryStats_App_Sync{} }
func (m *BatteryStats_App_Sync) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Sync) ProtoMessage()               {}
func (*BatteryStats_App_Sync) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 13} }

func (m *BatteryStats_App_Sync) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_Sync) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Sync) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_UserActivity struct {
	Name             *BatteryStats_App_UserActivity_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_App_UserActivity_Name" json:"name,omitempty"`
	Count            *float32                            `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte                              `json:"-"`
}

func (m *BatteryStats_App_UserActivity) Reset()         { *m = BatteryStats_App_UserActivity{} }
func (m *BatteryStats_App_UserActivity) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_UserActivity) ProtoMessage()    {}
func (*BatteryStats_App_UserActivity) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 14}
}

func (m *BatteryStats_App_UserActivity) GetName() BatteryStats_App_UserActivity_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_App_UserActivity_OTHER
}

func (m *BatteryStats_App_UserActivity) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Vibrator struct {
	// Duration of use.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times of use.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Vibrator) Reset()         { *m = BatteryStats_App_Vibrator{} }
func (m *BatteryStats_App_Vibrator) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_Vibrator) ProtoMessage()    {}
func (*BatteryStats_App_Vibrator) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 15}
}

func (m *BatteryStats_App_Vibrator) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Vibrator) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Video struct {
	// Duration spent with video on.
	TotalTimeMsec *float32 `protobuf:"fixed32,1,opt,name=total_time_msec" json:"total_time_msec,omitempty"`
	// #times.
	Count            *float32 `protobuf:"fixed32,2,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Video) Reset()                    { *m = BatteryStats_App_Video{} }
func (m *BatteryStats_App_Video) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Video) ProtoMessage()               {}
func (*BatteryStats_App_Video) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 16} }

func (m *BatteryStats_App_Video) GetTotalTimeMsec() float32 {
	if m != nil && m.TotalTimeMsec != nil {
		return *m.TotalTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Video) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_App_Wakelock struct {
	// PII-free wakelock names as a result of:
	// 1. regexp replacement (e.g., email address).
	// 2. removal of "unpopular" wakelock names that appear less than X%
	//    (in terms of #unique android_id's) of all daily reports.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Full wakelock.
	FullTimeMsec *float32 `protobuf:"fixed32,2,opt,name=full_time_msec" json:"full_time_msec,omitempty"`
	FullCount    *float32 `protobuf:"fixed32,3,opt,name=full_count" json:"full_count,omitempty"`
	// Partial wakelock.
	PartialTimeMsec *float32 `protobuf:"fixed32,4,opt,name=partial_time_msec" json:"partial_time_msec,omitempty"`
	PartialCount    *float32 `protobuf:"fixed32,5,opt,name=partial_count" json:"partial_count,omitempty"`
	// Window wakelock.
	WindowTimeMsec   *float32 `protobuf:"fixed32,6,opt,name=window_time_msec" json:"window_time_msec,omitempty"`
	WindowCount      *float32 `protobuf:"fixed32,7,opt,name=window_count" json:"window_count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Wakelock) Reset()         { *m = BatteryStats_App_Wakelock{} }
func (m *BatteryStats_App_Wakelock) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_App_Wakelock) ProtoMessage()    {}
func (*BatteryStats_App_Wakelock) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 0, 17}
}

func (m *BatteryStats_App_Wakelock) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_App_Wakelock) GetFullTimeMsec() float32 {
	if m != nil && m.FullTimeMsec != nil {
		return *m.FullTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wakelock) GetFullCount() float32 {
	if m != nil && m.FullCount != nil {
		return *m.FullCount
	}
	return 0
}

func (m *BatteryStats_App_Wakelock) GetPartialTimeMsec() float32 {
	if m != nil && m.PartialTimeMsec != nil {
		return *m.PartialTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wakelock) GetPartialCount() float32 {
	if m != nil && m.PartialCount != nil {
		return *m.PartialCount
	}
	return 0
}

func (m *BatteryStats_App_Wakelock) GetWindowTimeMsec() float32 {
	if m != nil && m.WindowTimeMsec != nil {
		return *m.WindowTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wakelock) GetWindowCount() float32 {
	if m != nil && m.WindowCount != nil {
		return *m.WindowCount
	}
	return 0
}

type BatteryStats_App_Wifi struct {
	// Duration holding Wifi-lock.
	FullWifiLockTimeMsec *float32 `protobuf:"fixed32,1,opt,name=full_wifi_lock_time_msec" json:"full_wifi_lock_time_msec,omitempty"`
	// Duration performing Wifi-scan.
	ScanTimeMsec *float32 `protobuf:"fixed32,2,opt,name=scan_time_msec" json:"scan_time_msec,omitempty"`
	// Duration running Wifi.
	RunningTimeMsec  *float32 `protobuf:"fixed32,3,opt,name=running_time_msec" json:"running_time_msec,omitempty"`
	ScanCount        *float32 `protobuf:"fixed32,4,opt,name=scan_count" json:"scan_count,omitempty"`
	IdleTimeMsec     *float32 `protobuf:"fixed32,5,opt,name=idle_time_msec" json:"idle_time_msec,omitempty"`
	RxTimeMsec       *float32 `protobuf:"fixed32,6,opt,name=rx_time_msec" json:"rx_time_msec,omitempty"`
	TxTimeMsec       *float32 `protobuf:"fixed32,7,opt,name=tx_time_msec" json:"tx_time_msec,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_App_Wifi) Reset()                    { *m = BatteryStats_App_Wifi{} }
func (m *BatteryStats_App_Wifi) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_App_Wifi) ProtoMessage()               {}
func (*BatteryStats_App_Wifi) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 0, 18} }

func (m *BatteryStats_App_Wifi) GetFullWifiLockTimeMsec() float32 {
	if m != nil && m.FullWifiLockTimeMsec != nil {
		return *m.FullWifiLockTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetScanTimeMsec() float32 {
	if m != nil && m.ScanTimeMsec != nil {
		return *m.ScanTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetRunningTimeMsec() float32 {
	if m != nil && m.RunningTimeMsec != nil {
		return *m.RunningTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetScanCount() float32 {
	if m != nil && m.ScanCount != nil {
		return *m.ScanCount
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetIdleTimeMsec() float32 {
	if m != nil && m.IdleTimeMsec != nil {
		return *m.IdleTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetRxTimeMsec() float32 {
	if m != nil && m.RxTimeMsec != nil {
		return *m.RxTimeMsec
	}
	return 0
}

func (m *BatteryStats_App_Wifi) GetTxTimeMsec() float32 {
	if m != nil && m.TxTimeMsec != nil {
		return *m.TxTimeMsec
	}
	return 0
}

type BatteryStats_ControllerActivity struct {
	// Time (milliseconds) spent in the idle state.
	IdleTimeMsec *int64 `protobuf:"varint,1,opt,name=idle_time_msec" json:"idle_time_msec,omitempty"`
	// Time (milliseconds) spent in the receive state.
	RxTimeMsec *int64 `protobuf:"varint,2,opt,name=rx_time_msec" json:"rx_time_msec,omitempty"`
	// Total power (mAh) consumed by the controller in all states. The value may
	// always be 0 if the device doesn't support power calculations.
	PowerMah         *int64                                     `protobuf:"varint,3,opt,name=power_mah" json:"power_mah,omitempty"`
	Tx               []*BatteryStats_ControllerActivity_TxLevel `protobuf:"bytes,4,rep,name=tx" json:"tx,omitempty"`
	XXX_unrecognized []byte                                     `json:"-"`
}

func (m *BatteryStats_ControllerActivity) Reset()         { *m = BatteryStats_ControllerActivity{} }
func (m *BatteryStats_ControllerActivity) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_ControllerActivity) ProtoMessage()    {}
func (*BatteryStats_ControllerActivity) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 1}
}

func (m *BatteryStats_ControllerActivity) GetIdleTimeMsec() int64 {
	if m != nil && m.IdleTimeMsec != nil {
		return *m.IdleTimeMsec
	}
	return 0
}

func (m *BatteryStats_ControllerActivity) GetRxTimeMsec() int64 {
	if m != nil && m.RxTimeMsec != nil {
		return *m.RxTimeMsec
	}
	return 0
}

func (m *BatteryStats_ControllerActivity) GetPowerMah() int64 {
	if m != nil && m.PowerMah != nil {
		return *m.PowerMah
	}
	return 0
}

func (m *BatteryStats_ControllerActivity) GetTx() []*BatteryStats_ControllerActivity_TxLevel {
	if m != nil {
		return m.Tx
	}
	return nil
}

// Represents a transmit level, where each level may draw a different amount
// of power. The levels themselves are controller-specific (and may possibly
// be device specific...yet to be confirmed).
type BatteryStats_ControllerActivity_TxLevel struct {
	// Transmit level. Higher levels draw more power.
	Level *int32 `protobuf:"varint,1,opt,name=level" json:"level,omitempty"`
	// Time spent in this specific transmit level state.
	TimeMsec         *int64 `protobuf:"varint,2,opt,name=time_msec" json:"time_msec,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (m *BatteryStats_ControllerActivity_TxLevel) Reset() {
	*m = BatteryStats_ControllerActivity_TxLevel{}
}
func (m *BatteryStats_ControllerActivity_TxLevel) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_ControllerActivity_TxLevel) ProtoMessage()    {}
func (*BatteryStats_ControllerActivity_TxLevel) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 1, 0}
}

func (m *BatteryStats_ControllerActivity_TxLevel) GetLevel() int32 {
	if m != nil && m.Level != nil {
		return *m.Level
	}
	return 0
}

func (m *BatteryStats_ControllerActivity_TxLevel) GetTimeMsec() int64 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

type BatteryStats_System struct {
	Battery          *BatteryStats_System_Battery          `protobuf:"bytes,1,opt,name=battery" json:"battery,omitempty"`
	BatteryDischarge *BatteryStats_System_BatteryDischarge `protobuf:"bytes,2,opt,name=battery_discharge" json:"battery_discharge,omitempty"`
	BatteryLevel     *BatteryStats_System_BatteryLevel     `protobuf:"bytes,3,opt,name=battery_level" json:"battery_level,omitempty"`
	BluetoothState   []*BatteryStats_System_BluetoothState `protobuf:"bytes,4,rep,name=bluetooth_state" json:"bluetooth_state,omitempty"`
	ChargeStep       []*BatteryStats_System_ChargeStep     `protobuf:"bytes,18,rep,name=charge_step" json:"charge_step,omitempty"`
	DataConnection   []*BatteryStats_System_DataConnection `protobuf:"bytes,5,rep,name=data_connection" json:"data_connection,omitempty"`
	DischargeStep    []*BatteryStats_System_DischargeStep  `protobuf:"bytes,19,rep,name=discharge_step" json:"discharge_step,omitempty"`
	GlobalBluetooth  *BatteryStats_System_GlobalBluetooth  `protobuf:"bytes,20,opt,name=global_bluetooth" json:"global_bluetooth,omitempty"`
	// tx_time and power were swapped during report version 17, so they cannot
	// be trusted in version 17.
	GlobalBluetoothController *BatteryStats_ControllerActivity           `protobuf:"bytes,22,opt,name=global_bluetooth_controller" json:"global_bluetooth_controller,omitempty"`
	GlobalModemController     *BatteryStats_ControllerActivity           `protobuf:"bytes,23,opt,name=global_modem_controller" json:"global_modem_controller,omitempty"`
	GlobalNetwork             *BatteryStats_System_GlobalNetwork         `protobuf:"bytes,6,opt,name=global_network" json:"global_network,omitempty"`
	GlobalWifi                *BatteryStats_System_GlobalWifi            `protobuf:"bytes,21,opt,name=global_wifi" json:"global_wifi,omitempty"`
	GlobalWifiController      *BatteryStats_ControllerActivity           `protobuf:"bytes,24,opt,name=global_wifi_controller" json:"global_wifi_controller,omitempty"`
	KernelWakelock            []*BatteryStats_System_KernelWakelock      `protobuf:"bytes,7,rep,name=kernel_wakelock" json:"kernel_wakelock,omitempty"`
	Misc                      *BatteryStats_System_Misc                  `protobuf:"bytes,8,opt,name=misc" json:"misc,omitempty"`
	PowerUseItem              []*BatteryStats_System_PowerUseItem        `protobuf:"bytes,9,rep,name=power_use_item" json:"power_use_item,omitempty"`
	PowerUseSummary           *BatteryStats_System_PowerUseSummary       `protobuf:"bytes,10,opt,name=power_use_summary" json:"power_use_summary,omitempty"`
	ScreenBrightness          []*BatteryStats_System_ScreenBrightness    `protobuf:"bytes,11,rep,name=screen_brightness" json:"screen_brightness,omitempty"`
	SignalScanningTime        *BatteryStats_System_SignalScanningTime    `protobuf:"bytes,12,opt,name=signal_scanning_time" json:"signal_scanning_time,omitempty"`
	SignalStrength            []*BatteryStats_System_SignalStrength      `protobuf:"bytes,13,rep,name=signal_strength" json:"signal_strength,omitempty"`
	WakeupReason              []*BatteryStats_System_WakeupReason        `protobuf:"bytes,14,rep,name=wakeup_reason" json:"wakeup_reason,omitempty"`
	WifiSignalStrength        []*BatteryStats_System_WifiSignalStrength  `protobuf:"bytes,16,rep,name=wifi_signal_strength" json:"wifi_signal_strength,omitempty"`
	WifiSupplicantState       []*BatteryStats_System_WifiSupplicantState `protobuf:"bytes,17,rep,name=wifi_supplicant_state" json:"wifi_supplicant_state,omitempty"`
	WifiState                 []*BatteryStats_System_WifiState           `protobuf:"bytes,15,rep,name=wifi_state" json:"wifi_state,omitempty"`
	XXX_unrecognized          []byte                                     `json:"-"`
}

func (m *BatteryStats_System) Reset()                    { *m = BatteryStats_System{} }
func (m *BatteryStats_System) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_System) ProtoMessage()               {}
func (*BatteryStats_System) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 2} }

func (m *BatteryStats_System) GetBattery() *BatteryStats_System_Battery {
	if m != nil {
		return m.Battery
	}
	return nil
}

func (m *BatteryStats_System) GetBatteryDischarge() *BatteryStats_System_BatteryDischarge {
	if m != nil {
		return m.BatteryDischarge
	}
	return nil
}

func (m *BatteryStats_System) GetBatteryLevel() *BatteryStats_System_BatteryLevel {
	if m != nil {
		return m.BatteryLevel
	}
	return nil
}

func (m *BatteryStats_System) GetBluetoothState() []*BatteryStats_System_BluetoothState {
	if m != nil {
		return m.BluetoothState
	}
	return nil
}

func (m *BatteryStats_System) GetChargeStep() []*BatteryStats_System_ChargeStep {
	if m != nil {
		return m.ChargeStep
	}
	return nil
}

func (m *BatteryStats_System) GetDataConnection() []*BatteryStats_System_DataConnection {
	if m != nil {
		return m.DataConnection
	}
	return nil
}

func (m *BatteryStats_System) GetDischargeStep() []*BatteryStats_System_DischargeStep {
	if m != nil {
		return m.DischargeStep
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalBluetooth() *BatteryStats_System_GlobalBluetooth {
	if m != nil {
		return m.GlobalBluetooth
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalBluetoothController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.GlobalBluetoothController
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalModemController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.GlobalModemController
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalNetwork() *BatteryStats_System_GlobalNetwork {
	if m != nil {
		return m.GlobalNetwork
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalWifi() *BatteryStats_System_GlobalWifi {
	if m != nil {
		return m.GlobalWifi
	}
	return nil
}

func (m *BatteryStats_System) GetGlobalWifiController() *BatteryStats_ControllerActivity {
	if m != nil {
		return m.GlobalWifiController
	}
	return nil
}

func (m *BatteryStats_System) GetKernelWakelock() []*BatteryStats_System_KernelWakelock {
	if m != nil {
		return m.KernelWakelock
	}
	return nil
}

func (m *BatteryStats_System) GetMisc() *BatteryStats_System_Misc {
	if m != nil {
		return m.Misc
	}
	return nil
}

func (m *BatteryStats_System) GetPowerUseItem() []*BatteryStats_System_PowerUseItem {
	if m != nil {
		return m.PowerUseItem
	}
	return nil
}

func (m *BatteryStats_System) GetPowerUseSummary() *BatteryStats_System_PowerUseSummary {
	if m != nil {
		return m.PowerUseSummary
	}
	return nil
}

func (m *BatteryStats_System) GetScreenBrightness() []*BatteryStats_System_ScreenBrightness {
	if m != nil {
		return m.ScreenBrightness
	}
	return nil
}

func (m *BatteryStats_System) GetSignalScanningTime() *BatteryStats_System_SignalScanningTime {
	if m != nil {
		return m.SignalScanningTime
	}
	return nil
}

func (m *BatteryStats_System) GetSignalStrength() []*BatteryStats_System_SignalStrength {
	if m != nil {
		return m.SignalStrength
	}
	return nil
}

func (m *BatteryStats_System) GetWakeupReason() []*BatteryStats_System_WakeupReason {
	if m != nil {
		return m.WakeupReason
	}
	return nil
}

func (m *BatteryStats_System) GetWifiSignalStrength() []*BatteryStats_System_WifiSignalStrength {
	if m != nil {
		return m.WifiSignalStrength
	}
	return nil
}

func (m *BatteryStats_System) GetWifiSupplicantState() []*BatteryStats_System_WifiSupplicantState {
	if m != nil {
		return m.WifiSupplicantState
	}
	return nil
}

func (m *BatteryStats_System) GetWifiState() []*BatteryStats_System_WifiState {
	if m != nil {
		return m.WifiState
	}
	return nil
}

type BatteryStats_System_Battery struct {
	// #times the device has been started.
	StartCount *float32 `protobuf:"fixed32,1,opt,name=start_count" json:"start_count,omitempty"`
	// Realtime on battery.
	BatteryRealtimeMsec *float32 `protobuf:"fixed32,2,opt,name=battery_realtime_msec" json:"battery_realtime_msec,omitempty"`
	// Uptime (i.e., not suspend).
	BatteryUptimeMsec *float32 `protobuf:"fixed32,3,opt,name=battery_uptime_msec" json:"battery_uptime_msec,omitempty"`
	// Total realtime. Should match battery_realtime_msec for SINCE_UNPLUGGED.
	TotalRealtimeMsec *float32 `protobuf:"fixed32,4,opt,name=total_realtime_msec" json:"total_realtime_msec,omitempty"`
	TotalUptimeMsec   *float32 `protobuf:"fixed32,5,opt,name=total_uptime_msec" json:"total_uptime_msec,omitempty"`
	// Wall clock time when the data collection started.
	StartClockTimeMsec    *int64   `protobuf:"varint,6,opt,name=start_clock_time_msec" json:"start_clock_time_msec,omitempty"`
	ScreenOffRealtimeMsec *float32 `protobuf:"fixed32,7,opt,name=screen_off_realtime_msec" json:"screen_off_realtime_msec,omitempty"`
	ScreenOffUptimeMsec   *float32 `protobuf:"fixed32,8,opt,name=screen_off_uptime_msec" json:"screen_off_uptime_msec,omitempty"`
	XXX_unrecognized      []byte   `json:"-"`
}

func (m *BatteryStats_System_Battery) Reset()         { *m = BatteryStats_System_Battery{} }
func (m *BatteryStats_System_Battery) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_Battery) ProtoMessage()    {}
func (*BatteryStats_System_Battery) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 0}
}

func (m *BatteryStats_System_Battery) GetStartCount() float32 {
	if m != nil && m.StartCount != nil {
		return *m.StartCount
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetBatteryRealtimeMsec() float32 {
	if m != nil && m.BatteryRealtimeMsec != nil {
		return *m.BatteryRealtimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetBatteryUptimeMsec() float32 {
	if m != nil && m.BatteryUptimeMsec != nil {
		return *m.BatteryUptimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetTotalRealtimeMsec() float32 {
	if m != nil && m.TotalRealtimeMsec != nil {
		return *m.TotalRealtimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetTotalUptimeMsec() float32 {
	if m != nil && m.TotalUptimeMsec != nil {
		return *m.TotalUptimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetStartClockTimeMsec() int64 {
	if m != nil && m.StartClockTimeMsec != nil {
		return *m.StartClockTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetScreenOffRealtimeMsec() float32 {
	if m != nil && m.ScreenOffRealtimeMsec != nil {
		return *m.ScreenOffRealtimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Battery) GetScreenOffUptimeMsec() float32 {
	if m != nil && m.ScreenOffUptimeMsec != nil {
		return *m.ScreenOffUptimeMsec
	}
	return 0
}

type BatteryStats_System_BatteryDischarge struct {
	// Discharged battery percentage points since the stats were last reset
	// after charging (lower bound approximation).
	LowerBound *float32 `protobuf:"fixed32,1,opt,name=lower_bound" json:"lower_bound,omitempty"`
	// Upper bound approximation.
	UpperBound *float32 `protobuf:"fixed32,2,opt,name=upper_bound" json:"upper_bound,omitempty"`
	// Discharged points while screen is on.
	ScreenOn         *float32 `protobuf:"fixed32,3,opt,name=screen_on" json:"screen_on,omitempty"`
	ScreenOff        *float32 `protobuf:"fixed32,4,opt,name=screen_off" json:"screen_off,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_BatteryDischarge) Reset()         { *m = BatteryStats_System_BatteryDischarge{} }
func (m *BatteryStats_System_BatteryDischarge) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_BatteryDischarge) ProtoMessage()    {}
func (*BatteryStats_System_BatteryDischarge) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 1}
}

func (m *BatteryStats_System_BatteryDischarge) GetLowerBound() float32 {
	if m != nil && m.LowerBound != nil {
		return *m.LowerBound
	}
	return 0
}

func (m *BatteryStats_System_BatteryDischarge) GetUpperBound() float32 {
	if m != nil && m.UpperBound != nil {
		return *m.UpperBound
	}
	return 0
}

func (m *BatteryStats_System_BatteryDischarge) GetScreenOn() float32 {
	if m != nil && m.ScreenOn != nil {
		return *m.ScreenOn
	}
	return 0
}

func (m *BatteryStats_System_BatteryDischarge) GetScreenOff() float32 {
	if m != nil && m.ScreenOff != nil {
		return *m.ScreenOff
	}
	return 0
}

type BatteryStats_System_BatteryLevel struct {
	// The battery percentage level at the last time the device was unplugged.
	StartLevel *float32 `protobuf:"fixed32,1,opt,name=start_level" json:"start_level,omitempty"`
	// The current level.
	CurrentLevel     *float32 `protobuf:"fixed32,2,opt,name=current_level" json:"current_level,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_BatteryLevel) Reset()         { *m = BatteryStats_System_BatteryLevel{} }
func (m *BatteryStats_System_BatteryLevel) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_BatteryLevel) ProtoMessage()    {}
func (*BatteryStats_System_BatteryLevel) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 2}
}

func (m *BatteryStats_System_BatteryLevel) GetStartLevel() float32 {
	if m != nil && m.StartLevel != nil {
		return *m.StartLevel
	}
	return 0
}

func (m *BatteryStats_System_BatteryLevel) GetCurrentLevel() float32 {
	if m != nil && m.CurrentLevel != nil {
		return *m.CurrentLevel
	}
	return 0
}

type BatteryStats_System_BluetoothState struct {
	Name *BatteryStats_System_BluetoothState_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_BluetoothState_Name" json:"name,omitempty"`
	// Duration running in the given state.
	TimeMsec *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	// #times entering the state.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_BluetoothState) Reset()         { *m = BatteryStats_System_BluetoothState{} }
func (m *BatteryStats_System_BluetoothState) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_BluetoothState) ProtoMessage()    {}
func (*BatteryStats_System_BluetoothState) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 3}
}

func (m *BatteryStats_System_BluetoothState) GetName() BatteryStats_System_BluetoothState_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_BluetoothState_INACTIVE
}

func (m *BatteryStats_System_BluetoothState) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_BluetoothState) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// ChargeStep tracks data for which conditions were continuously held for
// the entire duration. Field for which the conditions were not consistent
// for the entire duration should be marked MIXED.
type BatteryStats_System_ChargeStep struct {
	TimeMsec *float32 `protobuf:"fixed32,1,opt,name=time_msec" json:"time_msec,omitempty"`
	// Battery level
	Level *float32 `protobuf:"fixed32,2,opt,name=level" json:"level,omitempty"`
	// State of the display.
	DisplayState *BatteryStats_System_DisplayState_State `protobuf:"varint,3,opt,name=display_state,enum=batterystats.BatteryStats_System_DisplayState_State" json:"display_state,omitempty"`
	// Indicates status in power save mode.
	PowerSaveMode *BatteryStats_System_PowerSaveMode_Mode `protobuf:"varint,4,opt,name=power_save_mode,enum=batterystats.BatteryStats_System_PowerSaveMode_Mode" json:"power_save_mode,omitempty"`
	// Indicates status in idle mode.
	IdleMode         *BatteryStats_System_IdleMode_Mode `protobuf:"varint,5,opt,name=idle_mode,enum=batterystats.BatteryStats_System_IdleMode_Mode" json:"idle_mode,omitempty"`
	XXX_unrecognized []byte                             `json:"-"`
}

func (m *BatteryStats_System_ChargeStep) Reset()         { *m = BatteryStats_System_ChargeStep{} }
func (m *BatteryStats_System_ChargeStep) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_ChargeStep) ProtoMessage()    {}
func (*BatteryStats_System_ChargeStep) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 4}
}

func (m *BatteryStats_System_ChargeStep) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_ChargeStep) GetLevel() float32 {
	if m != nil && m.Level != nil {
		return *m.Level
	}
	return 0
}

func (m *BatteryStats_System_ChargeStep) GetDisplayState() BatteryStats_System_DisplayState_State {
	if m != nil && m.DisplayState != nil {
		return *m.DisplayState
	}
	return BatteryStats_System_DisplayState_MIXED
}

func (m *BatteryStats_System_ChargeStep) GetPowerSaveMode() BatteryStats_System_PowerSaveMode_Mode {
	if m != nil && m.PowerSaveMode != nil {
		return *m.PowerSaveMode
	}
	return BatteryStats_System_PowerSaveMode_MIXED
}

func (m *BatteryStats_System_ChargeStep) GetIdleMode() BatteryStats_System_IdleMode_Mode {
	if m != nil && m.IdleMode != nil {
		return *m.IdleMode
	}
	return BatteryStats_System_IdleMode_NO_DATA
}

type BatteryStats_System_DataConnection struct {
	Name *BatteryStats_System_DataConnection_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_DataConnection_Name" json:"name,omitempty"`
	// Duration running in the given state.
	TimeMsec *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	// #times entering the state.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_DataConnection) Reset()         { *m = BatteryStats_System_DataConnection{} }
func (m *BatteryStats_System_DataConnection) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_DataConnection) ProtoMessage()    {}
func (*BatteryStats_System_DataConnection) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 5}
}

func (m *BatteryStats_System_DataConnection) GetName() BatteryStats_System_DataConnection_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_DataConnection_NONE
}

func (m *BatteryStats_System_DataConnection) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_DataConnection) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// DischargeStep tracks data for which conditions were continuously held for
// the entire duration. Field for which the conditions were not consistent
// for the entire duration should be marked MIXED.
type BatteryStats_System_DischargeStep struct {
	TimeMsec *float32 `protobuf:"fixed32,1,opt,name=time_msec" json:"time_msec,omitempty"`
	// Battery level
	Level *float32 `protobuf:"fixed32,2,opt,name=level" json:"level,omitempty"`
	// State of the display.
	DisplayState *BatteryStats_System_DisplayState_State `protobuf:"varint,3,opt,name=display_state,enum=batterystats.BatteryStats_System_DisplayState_State" json:"display_state,omitempty"`
	// Indicates status in power save mode.
	PowerSaveMode *BatteryStats_System_PowerSaveMode_Mode `protobuf:"varint,4,opt,name=power_save_mode,enum=batterystats.BatteryStats_System_PowerSaveMode_Mode" json:"power_save_mode,omitempty"`
	// Indicates status in idle mode.
	IdleMode         *BatteryStats_System_IdleMode_Mode `protobuf:"varint,5,opt,name=idle_mode,enum=batterystats.BatteryStats_System_IdleMode_Mode" json:"idle_mode,omitempty"`
	XXX_unrecognized []byte                             `json:"-"`
}

func (m *BatteryStats_System_DischargeStep) Reset()         { *m = BatteryStats_System_DischargeStep{} }
func (m *BatteryStats_System_DischargeStep) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_DischargeStep) ProtoMessage()    {}
func (*BatteryStats_System_DischargeStep) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 6}
}

func (m *BatteryStats_System_DischargeStep) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_DischargeStep) GetLevel() float32 {
	if m != nil && m.Level != nil {
		return *m.Level
	}
	return 0
}

func (m *BatteryStats_System_DischargeStep) GetDisplayState() BatteryStats_System_DisplayState_State {
	if m != nil && m.DisplayState != nil {
		return *m.DisplayState
	}
	return BatteryStats_System_DisplayState_MIXED
}

func (m *BatteryStats_System_DischargeStep) GetPowerSaveMode() BatteryStats_System_PowerSaveMode_Mode {
	if m != nil && m.PowerSaveMode != nil {
		return *m.PowerSaveMode
	}
	return BatteryStats_System_PowerSaveMode_MIXED
}

func (m *BatteryStats_System_DischargeStep) GetIdleMode() BatteryStats_System_IdleMode_Mode {
	if m != nil && m.IdleMode != nil {
		return *m.IdleMode
	}
	return BatteryStats_System_IdleMode_NO_DATA
}

type BatteryStats_System_DisplayState struct {
	XXX_unrecognized []byte `json:"-"`
}

func (m *BatteryStats_System_DisplayState) Reset()         { *m = BatteryStats_System_DisplayState{} }
func (m *BatteryStats_System_DisplayState) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_DisplayState) ProtoMessage()    {}
func (*BatteryStats_System_DisplayState) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 7}
}

// Total bluetooth data
type BatteryStats_System_GlobalBluetooth struct {
	BluetoothIdleTimeMsec *float32 `protobuf:"fixed32,1,opt,name=bluetooth_idle_time_msec" json:"bluetooth_idle_time_msec,omitempty"`
	BluetoothRxTimeMsec   *float32 `protobuf:"fixed32,2,opt,name=bluetooth_rx_time_msec" json:"bluetooth_rx_time_msec,omitempty"`
	BluetoothTxTimeMsec   *float32 `protobuf:"fixed32,3,opt,name=bluetooth_tx_time_msec" json:"bluetooth_tx_time_msec,omitempty"`
	BluetoothPowerMah     *float32 `protobuf:"fixed32,4,opt,name=bluetooth_power_mah" json:"bluetooth_power_mah,omitempty"`
	XXX_unrecognized      []byte   `json:"-"`
}

func (m *BatteryStats_System_GlobalBluetooth) Reset()         { *m = BatteryStats_System_GlobalBluetooth{} }
func (m *BatteryStats_System_GlobalBluetooth) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_GlobalBluetooth) ProtoMessage()    {}
func (*BatteryStats_System_GlobalBluetooth) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 8}
}

func (m *BatteryStats_System_GlobalBluetooth) GetBluetoothIdleTimeMsec() float32 {
	if m != nil && m.BluetoothIdleTimeMsec != nil {
		return *m.BluetoothIdleTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalBluetooth) GetBluetoothRxTimeMsec() float32 {
	if m != nil && m.BluetoothRxTimeMsec != nil {
		return *m.BluetoothRxTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalBluetooth) GetBluetoothTxTimeMsec() float32 {
	if m != nil && m.BluetoothTxTimeMsec != nil {
		return *m.BluetoothTxTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalBluetooth) GetBluetoothPowerMah() float32 {
	if m != nil && m.BluetoothPowerMah != nil {
		return *m.BluetoothPowerMah
	}
	return 0
}

// "Total" view (vs. Network).
type BatteryStats_System_GlobalNetwork struct {
	MobileBytesRx    *float32 `protobuf:"fixed32,1,opt,name=mobile_bytes_rx" json:"mobile_bytes_rx,omitempty"`
	MobileBytesTx    *float32 `protobuf:"fixed32,2,opt,name=mobile_bytes_tx" json:"mobile_bytes_tx,omitempty"`
	WifiBytesRx      *float32 `protobuf:"fixed32,3,opt,name=wifi_bytes_rx" json:"wifi_bytes_rx,omitempty"`
	WifiBytesTx      *float32 `protobuf:"fixed32,4,opt,name=wifi_bytes_tx" json:"wifi_bytes_tx,omitempty"`
	MobilePacketsRx  *float32 `protobuf:"fixed32,5,opt,name=mobile_packets_rx" json:"mobile_packets_rx,omitempty"`
	MobilePacketsTx  *float32 `protobuf:"fixed32,6,opt,name=mobile_packets_tx" json:"mobile_packets_tx,omitempty"`
	WifiPacketsRx    *float32 `protobuf:"fixed32,7,opt,name=wifi_packets_rx" json:"wifi_packets_rx,omitempty"`
	WifiPacketsTx    *float32 `protobuf:"fixed32,8,opt,name=wifi_packets_tx" json:"wifi_packets_tx,omitempty"`
	BtBytesRx        *int64   `protobuf:"varint,9,opt,name=bt_bytes_rx" json:"bt_bytes_rx,omitempty"`
	BtBytesTx        *int64   `protobuf:"varint,10,opt,name=bt_bytes_tx" json:"bt_bytes_tx,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_GlobalNetwork) Reset()         { *m = BatteryStats_System_GlobalNetwork{} }
func (m *BatteryStats_System_GlobalNetwork) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_GlobalNetwork) ProtoMessage()    {}
func (*BatteryStats_System_GlobalNetwork) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 9}
}

func (m *BatteryStats_System_GlobalNetwork) GetMobileBytesRx() float32 {
	if m != nil && m.MobileBytesRx != nil {
		return *m.MobileBytesRx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetMobileBytesTx() float32 {
	if m != nil && m.MobileBytesTx != nil {
		return *m.MobileBytesTx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetWifiBytesRx() float32 {
	if m != nil && m.WifiBytesRx != nil {
		return *m.WifiBytesRx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetWifiBytesTx() float32 {
	if m != nil && m.WifiBytesTx != nil {
		return *m.WifiBytesTx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetMobilePacketsRx() float32 {
	if m != nil && m.MobilePacketsRx != nil {
		return *m.MobilePacketsRx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetMobilePacketsTx() float32 {
	if m != nil && m.MobilePacketsTx != nil {
		return *m.MobilePacketsTx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetWifiPacketsRx() float32 {
	if m != nil && m.WifiPacketsRx != nil {
		return *m.WifiPacketsRx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetWifiPacketsTx() float32 {
	if m != nil && m.WifiPacketsTx != nil {
		return *m.WifiPacketsTx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetBtBytesRx() int64 {
	if m != nil && m.BtBytesRx != nil {
		return *m.BtBytesRx
	}
	return 0
}

func (m *BatteryStats_System_GlobalNetwork) GetBtBytesTx() int64 {
	if m != nil && m.BtBytesTx != nil {
		return *m.BtBytesTx
	}
	return 0
}

// Total wifi data (includes app wifi usage).
type BatteryStats_System_GlobalWifi struct {
	// Wifi on and wifi running are mostly legacy and shouldn't have a
	// difference in practice.
	WifiOnTimeMsec      *float32 `protobuf:"fixed32,1,opt,name=wifi_on_time_msec" json:"wifi_on_time_msec,omitempty"`
	WifiRunningTimeMsec *float32 `protobuf:"fixed32,2,opt,name=wifi_running_time_msec" json:"wifi_running_time_msec,omitempty"`
	WifiIdleTimeMsec    *float32 `protobuf:"fixed32,3,opt,name=wifi_idle_time_msec" json:"wifi_idle_time_msec,omitempty"`
	// Rx and Tx times are reported from the Wifi chip. Running time is
	// recorded based on API calls, so it's more of an estimate.
	// RxTime + TxTime doesn't need to equal RunningTime.
	WifiRxTimeMsec   *float32 `protobuf:"fixed32,4,opt,name=wifi_rx_time_msec" json:"wifi_rx_time_msec,omitempty"`
	WifiTxTimeMsec   *float32 `protobuf:"fixed32,5,opt,name=wifi_tx_time_msec" json:"wifi_tx_time_msec,omitempty"`
	WifiPowerMah     *float32 `protobuf:"fixed32,6,opt,name=wifi_power_mah" json:"wifi_power_mah,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_GlobalWifi) Reset()         { *m = BatteryStats_System_GlobalWifi{} }
func (m *BatteryStats_System_GlobalWifi) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_GlobalWifi) ProtoMessage()    {}
func (*BatteryStats_System_GlobalWifi) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 10}
}

func (m *BatteryStats_System_GlobalWifi) GetWifiOnTimeMsec() float32 {
	if m != nil && m.WifiOnTimeMsec != nil {
		return *m.WifiOnTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalWifi) GetWifiRunningTimeMsec() float32 {
	if m != nil && m.WifiRunningTimeMsec != nil {
		return *m.WifiRunningTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalWifi) GetWifiIdleTimeMsec() float32 {
	if m != nil && m.WifiIdleTimeMsec != nil {
		return *m.WifiIdleTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalWifi) GetWifiRxTimeMsec() float32 {
	if m != nil && m.WifiRxTimeMsec != nil {
		return *m.WifiRxTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalWifi) GetWifiTxTimeMsec() float32 {
	if m != nil && m.WifiTxTimeMsec != nil {
		return *m.WifiTxTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_GlobalWifi) GetWifiPowerMah() float32 {
	if m != nil && m.WifiPowerMah != nil {
		return *m.WifiPowerMah
	}
	return 0
}

type BatteryStats_System_IdleMode struct {
	XXX_unrecognized []byte `json:"-"`
}

func (m *BatteryStats_System_IdleMode) Reset()         { *m = BatteryStats_System_IdleMode{} }
func (m *BatteryStats_System_IdleMode) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_IdleMode) ProtoMessage()    {}
func (*BatteryStats_System_IdleMode) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 11}
}

// Similar to Wakelock.
type BatteryStats_System_KernelWakelock struct {
	Name             *string  `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	TimeMsec         *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_KernelWakelock) Reset()         { *m = BatteryStats_System_KernelWakelock{} }
func (m *BatteryStats_System_KernelWakelock) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_KernelWakelock) ProtoMessage()    {}
func (*BatteryStats_System_KernelWakelock) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 12}
}

func (m *BatteryStats_System_KernelWakelock) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_System_KernelWakelock) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_KernelWakelock) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// "Total" view (vs. other App-specific stats above).
type BatteryStats_System_Misc struct {
	ScreenOnTimeMsec *float32 `protobuf:"fixed32,1,opt,name=screen_on_time_msec" json:"screen_on_time_msec,omitempty"`
	// battery_realtime - screen_on_time.
	ScreenOffTimeMsec *float32 `protobuf:"fixed32,2,opt,name=screen_off_time_msec" json:"screen_off_time_msec,omitempty"`
	// Active phone call time.
	PhoneOnTimeMsec *float32 `protobuf:"fixed32,3,opt,name=phone_on_time_msec" json:"phone_on_time_msec,omitempty"`
	// Duration of Wifi being enabled.
	WifiOnTimeMsec *float32 `protobuf:"fixed32,4,opt,name=wifi_on_time_msec" json:"wifi_on_time_msec,omitempty"`
	// Duration of Wifi being on and the driver being in the running state.
	WifiRunningTimeMsec          *float32 `protobuf:"fixed32,5,opt,name=wifi_running_time_msec" json:"wifi_running_time_msec,omitempty"`
	BluetoothOnTimeMsec          *float32 `protobuf:"fixed32,6,opt,name=bluetooth_on_time_msec" json:"bluetooth_on_time_msec,omitempty"`
	MobileBytesRx                *float32 `protobuf:"fixed32,7,opt,name=mobile_bytes_rx" json:"mobile_bytes_rx,omitempty"`
	MobileBytesTx                *float32 `protobuf:"fixed32,8,opt,name=mobile_bytes_tx" json:"mobile_bytes_tx,omitempty"`
	WifiBytesRx                  *float32 `protobuf:"fixed32,9,opt,name=wifi_bytes_rx" json:"wifi_bytes_rx,omitempty"`
	WifiBytesTx                  *float32 `protobuf:"fixed32,10,opt,name=wifi_bytes_tx" json:"wifi_bytes_tx,omitempty"`
	FullWakelockTimeMsec         *float32 `protobuf:"fixed32,11,opt,name=full_wakelock_time_msec" json:"full_wakelock_time_msec,omitempty"`
	PartialWakelockTimeMsec      *float32 `protobuf:"fixed32,12,opt,name=partial_wakelock_time_msec" json:"partial_wakelock_time_msec,omitempty"`
	MobileActiveTimeMsec         *float32 `protobuf:"fixed32,13,opt,name=mobile_active_time_msec" json:"mobile_active_time_msec,omitempty"`
	MobileActiveAdjustedTimeMsec *float32 `protobuf:"fixed32,14,opt,name=mobile_active_adjusted_time_msec" json:"mobile_active_adjusted_time_msec,omitempty"`
	InteractiveTimeMsec          *float32 `protobuf:"fixed32,15,opt,name=interactive_time_msec" json:"interactive_time_msec,omitempty"`
	// Amount of time power save mode was on.
	LowPowerModeEnabledTimeMsec *float32 `protobuf:"fixed32,16,opt,name=low_power_mode_enabled_time_msec" json:"low_power_mode_enabled_time_msec,omitempty"`
	// #times that connectivity state changed.
	ConnectivityChanges *float32 `protobuf:"fixed32,17,opt,name=connectivity_changes" json:"connectivity_changes,omitempty"`
	// When the device has seen no activity, it goes into
	// idle (Doze) mode. https://youtu.be/N72ksDKrX6c
	DeviceIdleModeEnabledTimeMsec *float32 `protobuf:"fixed32,18,opt,name=device_idle_mode_enabled_time_msec" json:"device_idle_mode_enabled_time_msec,omitempty"`
	DeviceIdleModeEnabledCount    *float32 `protobuf:"fixed32,19,opt,name=device_idle_mode_enabled_count" json:"device_idle_mode_enabled_count,omitempty"`
	// Idling time encompasses "idle" time and the idle maintenance windows that allow apps to operate.
	DeviceIdlingTimeMsec *float32 `protobuf:"fixed32,20,opt,name=device_idling_time_msec" json:"device_idling_time_msec,omitempty"`
	DeviceIdlingCount    *float32 `protobuf:"fixed32,21,opt,name=device_idling_count" json:"device_idling_count,omitempty"`
	// # times the mobile radio was active.
	MobileActiveCount *float32 `protobuf:"fixed32,22,opt,name=mobile_active_count" json:"mobile_active_count,omitempty"`
	// Amount of time the mobile radio was on but the time couldn't be attributed to any app.
	MobileActiveUnknownTime *float32 `protobuf:"fixed32,23,opt,name=mobile_active_unknown_time" json:"mobile_active_unknown_time,omitempty"`
	// Light-weight idle (Doze) mode turns on after the screen has been off for some time,
	// and then cycles through periods of light-weight idle with maintenance
	// windows, regardless of whether the device is moving around.
	DeviceLightIdleModeEnabledTimeMsec *int64 `protobuf:"varint,24,opt,name=device_light_idle_mode_enabled_time_msec" json:"device_light_idle_mode_enabled_time_msec,omitempty"`
	DeviceLightIdleModeEnabledCount    *int32 `protobuf:"varint,25,opt,name=device_light_idle_mode_enabled_count" json:"device_light_idle_mode_enabled_count,omitempty"`
	// Light idling time encompasses "light idle" time and the maintenance
	// windows that allow apps to operate.
	DeviceLightIdlingTimeMsec             *int64 `protobuf:"varint,26,opt,name=device_light_idling_time_msec" json:"device_light_idling_time_msec,omitempty"`
	DeviceLightIdlingCount                *int32 `protobuf:"varint,27,opt,name=device_light_idling_count" json:"device_light_idling_count,omitempty"`
	MaxDeviceLightIdleModeEnabledTimeMsec *int64 `protobuf:"varint,28,opt,name=max_device_light_idle_mode_enabled_time_msec" json:"max_device_light_idle_mode_enabled_time_msec,omitempty"`
	MaxDeviceIdleModeEnabledTimeMsec      *int64 `protobuf:"varint,29,opt,name=max_device_idle_mode_enabled_time_msec" json:"max_device_idle_mode_enabled_time_msec,omitempty"`
	XXX_unrecognized                      []byte `json:"-"`
}

func (m *BatteryStats_System_Misc) Reset()                    { *m = BatteryStats_System_Misc{} }
func (m *BatteryStats_System_Misc) String() string            { return proto.CompactTextString(m) }
func (*BatteryStats_System_Misc) ProtoMessage()               {}
func (*BatteryStats_System_Misc) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0, 2, 13} }

func (m *BatteryStats_System_Misc) GetScreenOnTimeMsec() float32 {
	if m != nil && m.ScreenOnTimeMsec != nil {
		return *m.ScreenOnTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetScreenOffTimeMsec() float32 {
	if m != nil && m.ScreenOffTimeMsec != nil {
		return *m.ScreenOffTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetPhoneOnTimeMsec() float32 {
	if m != nil && m.PhoneOnTimeMsec != nil {
		return *m.PhoneOnTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetWifiOnTimeMsec() float32 {
	if m != nil && m.WifiOnTimeMsec != nil {
		return *m.WifiOnTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetWifiRunningTimeMsec() float32 {
	if m != nil && m.WifiRunningTimeMsec != nil {
		return *m.WifiRunningTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetBluetoothOnTimeMsec() float32 {
	if m != nil && m.BluetoothOnTimeMsec != nil {
		return *m.BluetoothOnTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileBytesRx() float32 {
	if m != nil && m.MobileBytesRx != nil {
		return *m.MobileBytesRx
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileBytesTx() float32 {
	if m != nil && m.MobileBytesTx != nil {
		return *m.MobileBytesTx
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetWifiBytesRx() float32 {
	if m != nil && m.WifiBytesRx != nil {
		return *m.WifiBytesRx
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetWifiBytesTx() float32 {
	if m != nil && m.WifiBytesTx != nil {
		return *m.WifiBytesTx
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetFullWakelockTimeMsec() float32 {
	if m != nil && m.FullWakelockTimeMsec != nil {
		return *m.FullWakelockTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetPartialWakelockTimeMsec() float32 {
	if m != nil && m.PartialWakelockTimeMsec != nil {
		return *m.PartialWakelockTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileActiveTimeMsec() float32 {
	if m != nil && m.MobileActiveTimeMsec != nil {
		return *m.MobileActiveTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileActiveAdjustedTimeMsec() float32 {
	if m != nil && m.MobileActiveAdjustedTimeMsec != nil {
		return *m.MobileActiveAdjustedTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetInteractiveTimeMsec() float32 {
	if m != nil && m.InteractiveTimeMsec != nil {
		return *m.InteractiveTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetLowPowerModeEnabledTimeMsec() float32 {
	if m != nil && m.LowPowerModeEnabledTimeMsec != nil {
		return *m.LowPowerModeEnabledTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetConnectivityChanges() float32 {
	if m != nil && m.ConnectivityChanges != nil {
		return *m.ConnectivityChanges
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceIdleModeEnabledTimeMsec() float32 {
	if m != nil && m.DeviceIdleModeEnabledTimeMsec != nil {
		return *m.DeviceIdleModeEnabledTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceIdleModeEnabledCount() float32 {
	if m != nil && m.DeviceIdleModeEnabledCount != nil {
		return *m.DeviceIdleModeEnabledCount
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceIdlingTimeMsec() float32 {
	if m != nil && m.DeviceIdlingTimeMsec != nil {
		return *m.DeviceIdlingTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceIdlingCount() float32 {
	if m != nil && m.DeviceIdlingCount != nil {
		return *m.DeviceIdlingCount
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileActiveCount() float32 {
	if m != nil && m.MobileActiveCount != nil {
		return *m.MobileActiveCount
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMobileActiveUnknownTime() float32 {
	if m != nil && m.MobileActiveUnknownTime != nil {
		return *m.MobileActiveUnknownTime
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceLightIdleModeEnabledTimeMsec() int64 {
	if m != nil && m.DeviceLightIdleModeEnabledTimeMsec != nil {
		return *m.DeviceLightIdleModeEnabledTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceLightIdleModeEnabledCount() int32 {
	if m != nil && m.DeviceLightIdleModeEnabledCount != nil {
		return *m.DeviceLightIdleModeEnabledCount
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceLightIdlingTimeMsec() int64 {
	if m != nil && m.DeviceLightIdlingTimeMsec != nil {
		return *m.DeviceLightIdlingTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetDeviceLightIdlingCount() int32 {
	if m != nil && m.DeviceLightIdlingCount != nil {
		return *m.DeviceLightIdlingCount
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMaxDeviceLightIdleModeEnabledTimeMsec() int64 {
	if m != nil && m.MaxDeviceLightIdleModeEnabledTimeMsec != nil {
		return *m.MaxDeviceLightIdleModeEnabledTimeMsec
	}
	return 0
}

func (m *BatteryStats_System_Misc) GetMaxDeviceIdleModeEnabledTimeMsec() int64 {
	if m != nil && m.MaxDeviceIdleModeEnabledTimeMsec != nil {
		return *m.MaxDeviceIdleModeEnabledTimeMsec
	}
	return 0
}

type BatteryStats_System_PowerSaveMode struct {
	XXX_unrecognized []byte `json:"-"`
}

func (m *BatteryStats_System_PowerSaveMode) Reset()         { *m = BatteryStats_System_PowerSaveMode{} }
func (m *BatteryStats_System_PowerSaveMode) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_PowerSaveMode) ProtoMessage()    {}
func (*BatteryStats_System_PowerSaveMode) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 14}
}

type BatteryStats_System_PowerUseItem struct {
	Name             *BatteryStats_System_PowerUseItem_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_PowerUseItem_Name" json:"name,omitempty"`
	ComputedPowerMah *float32                               `protobuf:"fixed32,2,opt,name=computed_power_mah" json:"computed_power_mah,omitempty"`
	XXX_unrecognized []byte                                 `json:"-"`
}

func (m *BatteryStats_System_PowerUseItem) Reset()         { *m = BatteryStats_System_PowerUseItem{} }
func (m *BatteryStats_System_PowerUseItem) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_PowerUseItem) ProtoMessage()    {}
func (*BatteryStats_System_PowerUseItem) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 15}
}

func (m *BatteryStats_System_PowerUseItem) GetName() BatteryStats_System_PowerUseItem_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_PowerUseItem_IDLE
}

func (m *BatteryStats_System_PowerUseItem) GetComputedPowerMah() float32 {
	if m != nil && m.ComputedPowerMah != nil {
		return *m.ComputedPowerMah
	}
	return 0
}

type BatteryStats_System_PowerUseSummary struct {
	BatteryCapacityMah *float32 `protobuf:"fixed32,1,opt,name=battery_capacity_mah" json:"battery_capacity_mah,omitempty"`
	ComputedPowerMah   *float32 `protobuf:"fixed32,2,opt,name=computed_power_mah" json:"computed_power_mah,omitempty"`
	// Lower bound approximation.
	MinDrainedPowerMah *float32 `protobuf:"fixed32,3,opt,name=min_drained_power_mah" json:"min_drained_power_mah,omitempty"`
	MaxDrainedPowerMah *float32 `protobuf:"fixed32,4,opt,name=max_drained_power_mah" json:"max_drained_power_mah,omitempty"`
	XXX_unrecognized   []byte   `json:"-"`
}

func (m *BatteryStats_System_PowerUseSummary) Reset()         { *m = BatteryStats_System_PowerUseSummary{} }
func (m *BatteryStats_System_PowerUseSummary) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_PowerUseSummary) ProtoMessage()    {}
func (*BatteryStats_System_PowerUseSummary) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 16}
}

func (m *BatteryStats_System_PowerUseSummary) GetBatteryCapacityMah() float32 {
	if m != nil && m.BatteryCapacityMah != nil {
		return *m.BatteryCapacityMah
	}
	return 0
}

func (m *BatteryStats_System_PowerUseSummary) GetComputedPowerMah() float32 {
	if m != nil && m.ComputedPowerMah != nil {
		return *m.ComputedPowerMah
	}
	return 0
}

func (m *BatteryStats_System_PowerUseSummary) GetMinDrainedPowerMah() float32 {
	if m != nil && m.MinDrainedPowerMah != nil {
		return *m.MinDrainedPowerMah
	}
	return 0
}

func (m *BatteryStats_System_PowerUseSummary) GetMaxDrainedPowerMah() float32 {
	if m != nil && m.MaxDrainedPowerMah != nil {
		return *m.MaxDrainedPowerMah
	}
	return 0
}

type BatteryStats_System_ScreenBrightness struct {
	Name *BatteryStats_System_ScreenBrightness_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_ScreenBrightness_Name" json:"name,omitempty"`
	// Duration.
	TimeMsec         *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_ScreenBrightness) Reset()         { *m = BatteryStats_System_ScreenBrightness{} }
func (m *BatteryStats_System_ScreenBrightness) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_ScreenBrightness) ProtoMessage()    {}
func (*BatteryStats_System_ScreenBrightness) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 17}
}

func (m *BatteryStats_System_ScreenBrightness) GetName() BatteryStats_System_ScreenBrightness_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_ScreenBrightness_DARK
}

func (m *BatteryStats_System_ScreenBrightness) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

type BatteryStats_System_SignalScanningTime struct {
	// Duration trying to acquire a signal.
	TimeMsec         *float32 `protobuf:"fixed32,1,opt,name=time_msec" json:"time_msec,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_SignalScanningTime) Reset() {
	*m = BatteryStats_System_SignalScanningTime{}
}
func (m *BatteryStats_System_SignalScanningTime) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_SignalScanningTime) ProtoMessage()    {}
func (*BatteryStats_System_SignalScanningTime) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 18}
}

func (m *BatteryStats_System_SignalScanningTime) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

type BatteryStats_System_SignalStrength struct {
	Name *BatteryStats_System_SignalStrength_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_SignalStrength_Name" json:"name,omitempty"`
	// Duration running with the given signal strength.
	TimeMsec *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	// #times entering the given signal strength.
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_SignalStrength) Reset()         { *m = BatteryStats_System_SignalStrength{} }
func (m *BatteryStats_System_SignalStrength) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_SignalStrength) ProtoMessage()    {}
func (*BatteryStats_System_SignalStrength) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 19}
}

func (m *BatteryStats_System_SignalStrength) GetName() BatteryStats_System_SignalStrength_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_SignalStrength_NONE_OR_UNKNOWN
}

func (m *BatteryStats_System_SignalStrength) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_SignalStrength) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// Similar to KernelWakelock.
type BatteryStats_System_WakeupReason struct {
	Name             *string  `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	TimeMsec         *float32 `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	Count            *float32 `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (m *BatteryStats_System_WakeupReason) Reset()         { *m = BatteryStats_System_WakeupReason{} }
func (m *BatteryStats_System_WakeupReason) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_WakeupReason) ProtoMessage()    {}
func (*BatteryStats_System_WakeupReason) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 20}
}

func (m *BatteryStats_System_WakeupReason) GetName() string {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return ""
}

func (m *BatteryStats_System_WakeupReason) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_WakeupReason) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// Similar to SignalStrength.
type BatteryStats_System_WifiSignalStrength struct {
	Name             *BatteryStats_System_WifiSignalStrength_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_WifiSignalStrength_Name" json:"name,omitempty"`
	TimeMsec         *float32                                     `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	Count            *float32                                     `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte                                       `json:"-"`
}

func (m *BatteryStats_System_WifiSignalStrength) Reset() {
	*m = BatteryStats_System_WifiSignalStrength{}
}
func (m *BatteryStats_System_WifiSignalStrength) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_WifiSignalStrength) ProtoMessage()    {}
func (*BatteryStats_System_WifiSignalStrength) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 21}
}

func (m *BatteryStats_System_WifiSignalStrength) GetName() BatteryStats_System_WifiSignalStrength_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_WifiSignalStrength_NONE
}

func (m *BatteryStats_System_WifiSignalStrength) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_WifiSignalStrength) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

type BatteryStats_System_WifiSupplicantState struct {
	Name             *BatteryStats_System_WifiSupplicantState_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_WifiSupplicantState_Name" json:"name,omitempty"`
	TimeMsec         *float32                                      `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	Count            *float32                                      `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte                                        `json:"-"`
}

func (m *BatteryStats_System_WifiSupplicantState) Reset() {
	*m = BatteryStats_System_WifiSupplicantState{}
}
func (m *BatteryStats_System_WifiSupplicantState) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_WifiSupplicantState) ProtoMessage()    {}
func (*BatteryStats_System_WifiSupplicantState) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 22}
}

func (m *BatteryStats_System_WifiSupplicantState) GetName() BatteryStats_System_WifiSupplicantState_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_WifiSupplicantState_INVALID
}

func (m *BatteryStats_System_WifiSupplicantState) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_WifiSupplicantState) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

// Similar to WifiSupplicantState.
type BatteryStats_System_WifiState struct {
	Name             *BatteryStats_System_WifiState_Name `protobuf:"varint,1,opt,name=name,enum=batterystats.BatteryStats_System_WifiState_Name" json:"name,omitempty"`
	TimeMsec         *float32                            `protobuf:"fixed32,2,opt,name=time_msec" json:"time_msec,omitempty"`
	Count            *float32                            `protobuf:"fixed32,3,opt,name=count" json:"count,omitempty"`
	XXX_unrecognized []byte                              `json:"-"`
}

func (m *BatteryStats_System_WifiState) Reset()         { *m = BatteryStats_System_WifiState{} }
func (m *BatteryStats_System_WifiState) String() string { return proto.CompactTextString(m) }
func (*BatteryStats_System_WifiState) ProtoMessage()    {}
func (*BatteryStats_System_WifiState) Descriptor() ([]byte, []int) {
	return fileDescriptor0, []int{0, 2, 23}
}

func (m *BatteryStats_System_WifiState) GetName() BatteryStats_System_WifiState_Name {
	if m != nil && m.Name != nil {
		return *m.Name
	}
	return BatteryStats_System_WifiState_OFF
}

func (m *BatteryStats_System_WifiState) GetTimeMsec() float32 {
	if m != nil && m.TimeMsec != nil {
		return *m.TimeMsec
	}
	return 0
}

func (m *BatteryStats_System_WifiState) GetCount() float32 {
	if m != nil && m.Count != nil {
		return *m.Count
	}
	return 0
}

func init() {
	proto.RegisterType((*BatteryStats)(nil), "batterystats.BatteryStats")
	proto.RegisterType((*BatteryStats_App)(nil), "batterystats.BatteryStats.App")
	proto.RegisterType((*BatteryStats_App_Child)(nil), "batterystats.BatteryStats.App.Child")
	proto.RegisterType((*BatteryStats_App_Apk)(nil), "batterystats.BatteryStats.App.Apk")
	proto.RegisterType((*BatteryStats_App_Apk_Service)(nil), "batterystats.BatteryStats.App.Apk.Service")
	proto.RegisterType((*BatteryStats_App_Audio)(nil), "batterystats.BatteryStats.App.Audio")
	proto.RegisterType((*BatteryStats_App_Camera)(nil), "batterystats.BatteryStats.App.Camera")
	proto.RegisterType((*BatteryStats_App_Cpu)(nil), "batterystats.BatteryStats.App.Cpu")
	proto.RegisterType((*BatteryStats_App_Flashlight)(nil), "batterystats.BatteryStats.App.Flashlight")
	proto.RegisterType((*BatteryStats_App_Foreground)(nil), "batterystats.BatteryStats.App.Foreground")
	proto.RegisterType((*BatteryStats_App_Network)(nil), "batterystats.BatteryStats.App.Network")
	proto.RegisterType((*BatteryStats_App_PowerUseItem)(nil), "batterystats.BatteryStats.App.PowerUseItem")
	proto.RegisterType((*BatteryStats_App_Process)(nil), "batterystats.BatteryStats.App.Process")
	proto.RegisterType((*BatteryStats_App_ScheduledJob)(nil), "batterystats.BatteryStats.App.ScheduledJob")
	proto.RegisterType((*BatteryStats_App_Sensor)(nil), "batterystats.BatteryStats.App.Sensor")
	proto.RegisterType((*BatteryStats_App_StateTime)(nil), "batterystats.BatteryStats.App.StateTime")
	proto.RegisterType((*BatteryStats_App_Sync)(nil), "batterystats.BatteryStats.App.Sync")
	proto.RegisterType((*BatteryStats_App_UserActivity)(nil), "batterystats.BatteryStats.App.UserActivity")
	proto.RegisterType((*BatteryStats_App_Vibrator)(nil), "batterystats.BatteryStats.App.Vibrator")
	proto.RegisterType((*BatteryStats_App_Video)(nil), "batterystats.BatteryStats.App.Video")
	proto.RegisterType((*BatteryStats_App_Wakelock)(nil), "batterystats.BatteryStats.App.Wakelock")
	proto.RegisterType((*BatteryStats_App_Wifi)(nil), "batterystats.BatteryStats.App.Wifi")
	proto.RegisterType((*BatteryStats_ControllerActivity)(nil), "batterystats.BatteryStats.ControllerActivity")
	proto.RegisterType((*BatteryStats_ControllerActivity_TxLevel)(nil), "batterystats.BatteryStats.ControllerActivity.TxLevel")
	proto.RegisterType((*BatteryStats_System)(nil), "batterystats.BatteryStats.System")
	proto.RegisterType((*BatteryStats_System_Battery)(nil), "batterystats.BatteryStats.System.Battery")
	proto.RegisterType((*BatteryStats_System_BatteryDischarge)(nil), "batterystats.BatteryStats.System.BatteryDischarge")
	proto.RegisterType((*BatteryStats_System_BatteryLevel)(nil), "batterystats.BatteryStats.System.BatteryLevel")
	proto.RegisterType((*BatteryStats_System_BluetoothState)(nil), "batterystats.BatteryStats.System.BluetoothState")
	proto.RegisterType((*BatteryStats_System_ChargeStep)(nil), "batterystats.BatteryStats.System.ChargeStep")
	proto.RegisterType((*BatteryStats_System_DataConnection)(nil), "batterystats.BatteryStats.System.DataConnection")
	proto.RegisterType((*BatteryStats_System_DischargeStep)(nil), "batterystats.BatteryStats.System.DischargeStep")
	proto.RegisterType((*BatteryStats_System_DisplayState)(nil), "batterystats.BatteryStats.System.DisplayState")
	proto.RegisterType((*BatteryStats_System_GlobalBluetooth)(nil), "batterystats.BatteryStats.System.GlobalBluetooth")
	proto.RegisterType((*BatteryStats_System_GlobalNetwork)(nil), "batterystats.BatteryStats.System.GlobalNetwork")
	proto.RegisterType((*BatteryStats_System_GlobalWifi)(nil), "batterystats.BatteryStats.System.GlobalWifi")
	proto.RegisterType((*BatteryStats_System_IdleMode)(nil), "batterystats.BatteryStats.System.IdleMode")
	proto.RegisterType((*BatteryStats_System_KernelWakelock)(nil), "batterystats.BatteryStats.System.KernelWakelock")
	proto.RegisterType((*BatteryStats_System_Misc)(nil), "batterystats.BatteryStats.System.Misc")
	proto.RegisterType((*BatteryStats_System_PowerSaveMode)(nil), "batterystats.BatteryStats.System.PowerSaveMode")
	proto.RegisterType((*BatteryStats_System_PowerUseItem)(nil), "batterystats.BatteryStats.System.PowerUseItem")
	proto.RegisterType((*BatteryStats_System_PowerUseSummary)(nil), "batterystats.BatteryStats.System.PowerUseSummary")
	proto.RegisterType((*BatteryStats_System_ScreenBrightness)(nil), "batterystats.BatteryStats.System.ScreenBrightness")
	proto.RegisterType((*BatteryStats_System_SignalScanningTime)(nil), "batterystats.BatteryStats.System.SignalScanningTime")
	proto.RegisterType((*BatteryStats_System_SignalStrength)(nil), "batterystats.BatteryStats.System.SignalStrength")
	proto.RegisterType((*BatteryStats_System_WakeupReason)(nil), "batterystats.BatteryStats.System.WakeupReason")
	proto.RegisterType((*BatteryStats_System_WifiSignalStrength)(nil), "batterystats.BatteryStats.System.WifiSignalStrength")
	proto.RegisterType((*BatteryStats_System_WifiSupplicantState)(nil), "batterystats.BatteryStats.System.WifiSupplicantState")
	proto.RegisterType((*BatteryStats_System_WifiState)(nil), "batterystats.BatteryStats.System.WifiState")
	proto.RegisterEnum("batterystats.BatteryStats_AggregationType", BatteryStats_AggregationType_name, BatteryStats_AggregationType_value)
	proto.RegisterEnum("batterystats.BatteryStats_App_UserActivity_Name", BatteryStats_App_UserActivity_Name_name, BatteryStats_App_UserActivity_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_BluetoothState_Name", BatteryStats_System_BluetoothState_Name_name, BatteryStats_System_BluetoothState_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_DataConnection_Name", BatteryStats_System_DataConnection_Name_name, BatteryStats_System_DataConnection_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_DisplayState_State", BatteryStats_System_DisplayState_State_name, BatteryStats_System_DisplayState_State_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_IdleMode_Mode", BatteryStats_System_IdleMode_Mode_name, BatteryStats_System_IdleMode_Mode_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_PowerSaveMode_Mode", BatteryStats_System_PowerSaveMode_Mode_name, BatteryStats_System_PowerSaveMode_Mode_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_PowerUseItem_Name", BatteryStats_System_PowerUseItem_Name_name, BatteryStats_System_PowerUseItem_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_ScreenBrightness_Name", BatteryStats_System_ScreenBrightness_Name_name, BatteryStats_System_ScreenBrightness_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_SignalStrength_Name", BatteryStats_System_SignalStrength_Name_name, BatteryStats_System_SignalStrength_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_WifiSignalStrength_Name", BatteryStats_System_WifiSignalStrength_Name_name, BatteryStats_System_WifiSignalStrength_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_WifiSupplicantState_Name", BatteryStats_System_WifiSupplicantState_Name_name, BatteryStats_System_WifiSupplicantState_Name_value)
	proto.RegisterEnum("batterystats.BatteryStats_System_WifiState_Name", BatteryStats_System_WifiState_Name_name, BatteryStats_System_WifiState_Name_value)
}

var fileDescriptor0 = []byte{
	// 3643 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xec, 0x5a, 0xcd, 0x73, 0xdb, 0xd8,
	0x91, 0x5f, 0x7e, 0x89, 0x52, 0x93, 0xa2, 0x60, 0x48, 0x96, 0x69, 0xc8, 0xf6, 0x78, 0xb4, 0xf3,
	0xe1, 0xf5, 0x78, 0x24, 0x8f, 0xec, 0xa9, 0xa9, 0xf9, 0x1e, 0x88, 0xa4, 0x24, 0xae, 0x25, 0x92,
	0xc5, 0x0f, 0x6b, 0x66, 0x6a, 0xab, 0x50, 0x20, 0x09, 0x53, 0x18, 0x91, 0x00, 0x0b, 0x00, 0x2d,
	0x7b, 0x6f, 0x7b, 0xda, 0xda, 0xaa, 0xdd, 0xa9, 0xdd, 0xcb, 0x9e, 0x76, 0xaf, 0x49, 0x55, 0x2a,
	0xff, 0x40, 0x2e, 0x49, 0x25, 0x55, 0xf9, 0x0b, 0x72, 0x4c, 0xae, 0xb9, 0xe4, 0x90, 0x4b, 0xfe,
	0x81, 0xf4, 0xeb, 0x07, 0x80, 0x00, 0x48, 0x8b, 0x90, 0x8e, 0xa9, 0x5c, 0x5c, 0x70, 0xbf, 0xfe,
	0xf5, 0x7b, 0xdd, 0xaf, 0x5f, 0x7f, 0x51, 0x70, 0x3c, 0xd0, 0x9d, 0xb3, 0x49, 0x77, 0xa7, 0x67,
	0x8e, 0x76, 0x07, 0xa6, 0x39, 0x18, 0x6a, 0xbb, 0x5d, 0xd5, 0x71, 0x34, 0xeb, 0xf5, 0x87, 0x67,
	0xba, 0xed, 0x98, 0x96, 0xae, 0x1a, 0xbb, 0xe3, 0xae, 0x47, 0xb4, 0x1d, 0xd5, 0xb1, 0x95, 0xb1,
	0x65, 0x3a, 0x66, 0x88, 0xb4, 0x43, 0x24, 0x31, 0x1f, 0xa4, 0x49, 0x5f, 0xc5, 0x95, 0x3d, 0xd1,
	0x87, 0x7d, 0x4f, 0x28, 0xfb, 0xe6, 0xd2, 0xb6, 0x7f, 0xff, 0x1d, 0xe4, 0xf7, 0x39, 0xa0, 0xc5,
	0x04, 0x8a, 0x37, 0x60, 0xc5, 0xd2, 0x7a, 0xa6, 0xd5, 0x57, 0xf4, 0x7e, 0x31, 0x71, 0x3f, 0xf1,
	0x60, 0x45, 0x5c, 0x87, 0x9c, 0x6a, 0xf4, 0x2d, 0x53, 0x67, 0xb4, 0x57, 0xc5, 0x24, 0x11, 0x6f,
	0xc1, 0x1a, 0x9e, 0xc0, 0x72, 0x14, 0x47, 0x1f, 0x69, 0xca, 0xc4, 0xd6, 0x7a, 0xc5, 0x14, 0x2e,
	0xa4, 0xc4, 0x9b, 0xb0, 0xaa, 0x19, 0xfd, 0x00, 0x39, 0x4d, 0xe4, 0x4d, 0x28, 0x04, 0xf8, 0x6d,
	0xc7, 0x2a, 0x66, 0x48, 0xce, 0x06, 0xe4, 0x7d, 0x76, 0x46, 0x5d, 0x22, 0xea, 0x1d, 0xd8, 0x18,
	0x9a, 0x3d, 0x75, 0xa8, 0x44, 0x30, 0x59, 0x5a, 0x95, 0x40, 0xe4, 0xab, 0x21, 0xe4, 0xb2, 0x27,
	0xaf, 0xaf, 0xbd, 0xd4, 0x7b, 0x9a, 0x32, 0xb0, 0xcc, 0xc9, 0xb8, 0xb8, 0x72, 0x3f, 0xc5, 0xa9,
	0xbd, 0x33, 0xad, 0x77, 0xae, 0x1b, 0x8a, 0x35, 0x19, 0x6a, 0x45, 0x20, 0xaa, 0x08, 0xa0, 0xdb,
	0x0a, 0x37, 0x9b, 0x55, 0xcc, 0x21, 0x7e, 0x99, 0xe9, 0x85, 0x34, 0x3c, 0xb8, 0xa5, 0x58, 0xda,
	0x50, 0x53, 0x6d, 0xad, 0x98, 0xa7, 0x85, 0x2d, 0xc8, 0x90, 0xe1, 0x8a, 0xab, 0xf8, 0xdf, 0xdc,
	0x5e, 0x7e, 0x87, 0x9b, 0x71, 0x9f, 0xfd, 0xcb, 0x4c, 0x64, 0xf7, 0xcf, 0x95, 0x97, 0x9a, 0x65,
	0xeb, 0xa6, 0x51, 0x2c, 0x20, 0x4b, 0x86, 0x11, 0x07, 0x23, 0xdb, 0x27, 0xae, 0x11, 0x11, 0xf7,
	0xec, 0x9a, 0xa6, 0x33, 0x34, 0xd5, 0x3e, 0xee, 0x29, 0xd0, 0x99, 0x57, 0x21, 0x63, 0xa9, 0x7d,
	0xdd, 0x2c, 0xde, 0xa0, 0xff, 0xae, 0x41, 0xb6, 0xa7, 0x5a, 0x96, 0x8e, 0xeb, 0xa2, 0xa7, 0x53,
	0xcf, 0x9c, 0x18, 0x8e, 0xf5, 0x5a, 0xe9, 0x99, 0x7d, 0xad, 0xb8, 0x4e, 0x54, 0xbc, 0x29, 0xd2,
	0xfd, 0x5f, 0x4d, 0x43, 0x2b, 0x6e, 0x10, 0x09, 0x8d, 0x6c, 0x69, 0x63, 0x13, 0x2d, 0xe6, 0x6d,
	0x7a, 0xd3, 0x3b, 0x09, 0x2a, 0x85, 0xce, 0x30, 0xd0, 0x0d, 0x75, 0x58, 0xdc, 0x24, 0x85, 0x10,
	0x8f, 0xc4, 0xa1, 0xea, 0x68, 0xb6, 0x53, 0xbc, 0x45, 0x24, 0xdc, 0x19, 0x49, 0x7d, 0xfd, 0xc5,
	0x8b, 0x62, 0x91, 0x08, 0x1c, 0xa8, 0x0e, 0x1d, 0x65, 0xc4, 0x36, 0xbe, 0xe3, 0x71, 0x5d, 0xa8,
	0x96, 0xa1, 0x1b, 0x83, 0xe2, 0x5d, 0xb2, 0x23, 0x9e, 0x5f, 0xb3, 0x2c, 0xd3, 0x2a, 0xde, 0xa3,
	0xff, 0x96, 0x41, 0x50, 0x07, 0x03, 0x4b, 0x1b, 0xa8, 0x0e, 0x1e, 0x41, 0x71, 0x5e, 0x8f, 0xb5,
	0xe2, 0x6d, 0x44, 0x16, 0xf6, 0x1e, 0xee, 0x84, 0x1c, 0x3a, 0xe8, 0x78, 0x3b, 0xf2, 0x14, 0xd2,
	0x46, 0x84, 0xf8, 0x01, 0xa4, 0xd4, 0xf1, 0xb8, 0x28, 0xa1, 0xc8, 0xdc, 0xde, 0xbd, 0xcb, 0x80,
	0xe3, 0xb1, 0xf8, 0x11, 0x2c, 0xd9, 0xb8, 0xa6, 0x8d, 0x8a, 0x5b, 0x74, 0x3b, 0x6f, 0x5f, 0xc2,
	0xdf, 0x22, 0x46, 0xe9, 0x8f, 0x5b, 0x90, 0x62, 0xd0, 0x3c, 0xa4, 0x0d, 0x75, 0xa4, 0xb9, 0xbe,
	0x8e, 0xa6, 0x76, 0x4d, 0xc7, 0x4d, 0x9d, 0x24, 0xfb, 0xe5, 0x20, 0x35, 0xc1, 0xe7, 0x90, 0xa2,
	0xff, 0x04, 0x58, 0x08, 0x58, 0x24, 0xe0, 0x13, 0xc8, 0xf4, 0xce, 0xb8, 0x7b, 0xb0, 0x03, 0xbf,
	0x73, 0xf9, 0x81, 0x77, 0x4a, 0x8c, 0x57, 0xfc, 0x02, 0xe0, 0x4c, 0x53, 0xfb, 0x0a, 0x47, 0x8a,
	0x74, 0xf4, 0x58, 0xc8, 0xfd, 0x64, 0x31, 0x21, 0xee, 0x32, 0x0b, 0x9d, 0xd3, 0xfb, 0xca, 0xed,
	0x6d, 0x2f, 0x80, 0xc9, 0xe3, 0x73, 0x76, 0x46, 0x75, 0xc2, 0xfc, 0x6c, 0x3d, 0xd6, 0x4e, 0x32,
	0xe3, 0x15, 0x9f, 0xc1, 0x46, 0x77, 0x38, 0xd1, 0x1c, 0x74, 0xda, 0x33, 0xb4, 0x09, 0x7a, 0xa1,
	0x39, 0x64, 0xcf, 0xe5, 0x36, 0xc9, 0xf8, 0xf0, 0x12, 0x19, 0x25, 0x9f, 0x59, 0xee, 0x39, 0xfa,
	0x4b, 0xdd, 0x79, 0x2d, 0x7e, 0x0c, 0x4b, 0x3d, 0xb4, 0x99, 0xa5, 0x92, 0xc3, 0xe6, 0xf6, 0xde,
	0x5d, 0xa4, 0x2c, 0x31, 0x33, 0x4d, 0x7b, 0xe3, 0x09, 0x39, 0xe9, 0x62, 0x4d, 0x4b, 0xe3, 0x89,
	0xf8, 0x25, 0xc0, 0x8b, 0xa1, 0x6a, 0x9f, 0x0d, 0xf5, 0xc1, 0x99, 0x43, 0x8f, 0x20, 0xb7, 0xf7,
	0x4f, 0x0b, 0x70, 0x07, 0x3e, 0x80, 0xe0, 0x26, 0x7a, 0x23, 0x46, 0x10, 0xa3, 0x4f, 0x81, 0x2a,
	0x06, 0xdc, 0x07, 0x88, 0x87, 0x20, 0xb0, 0xe7, 0x32, 0x0a, 0x9a, 0x4b, 0xba, 0x8e, 0xb9, 0x3e,
	0x81, 0xac, 0xa1, 0x39, 0x17, 0xa6, 0x75, 0x4e, 0x71, 0x31, 0xb7, 0xf7, 0xde, 0x82, 0x43, 0xd4,
	0x38, 0xb7, 0x58, 0x82, 0xc2, 0xd8, 0xbc, 0xc0, 0x18, 0x86, 0x81, 0x4c, 0xd1, 0xd9, 0xbb, 0xc8,
	0x12, 0xfe, 0x83, 0x05, 0xf8, 0x06, 0x03, 0x75, 0x6c, 0xad, 0x8a, 0x10, 0xb6, 0x3b, 0x26, 0x89,
	0x9e, 0x66, 0xdb, 0x18, 0x5b, 0x53, 0x31, 0x76, 0x6f, 0x70, 0x6e, 0x71, 0x1f, 0x56, 0x6d, 0x0c,
	0xb7, 0x7d, 0x8c, 0xb4, 0x7d, 0xe5, 0x07, 0xb3, 0x8b, 0xf1, 0x30, 0x15, 0x63, 0xf3, 0x96, 0x87,
	0xf9, 0x67, 0xb3, 0xcb, 0x3c, 0xc5, 0xd6, 0x0c, 0x1b, 0x83, 0xca, 0x0a, 0x81, 0x17, 0x79, 0x4a,
	0x8b, 0x98, 0xd9, 0x8b, 0x62, 0x0c, 0x1a, 0xa5, 0x05, 0x0a, 0xb9, 0xb9, 0xbd, 0x07, 0x8b, 0xa0,
	0x0c, 0xd0, 0x46, 0x7e, 0x0c, 0x23, 0x69, 0xfb, 0xb5, 0xd1, 0xc3, 0xb0, 0xcc, 0xb6, 0xfc, 0xc7,
	0x45, 0x38, 0x64, 0x65, 0xba, 0x52, 0xb2, 0x50, 0xdd, 0x3b, 0xc3, 0x18, 0x1e, 0x47, 0x57, 0xb4,
	0xf1, 0xf4, 0x9a, 0x3f, 0x85, 0xe5, 0x97, 0x7a, 0xd7, 0x52, 0x31, 0x5d, 0x63, 0x66, 0x62, 0x47,
	0x7e, 0x7f, 0x01, 0xfc, 0xb9, 0xcb, 0xce, 0x9e, 0xf4, 0x4b, 0xbd, 0xaf, 0x99, 0x14, 0xd3, 0x17,
	0x3f, 0xe9, 0xe7, 0x8c, 0x97, 0xed, 0x77, 0xa1, 0x9e, 0x6b, 0x98, 0x43, 0xcf, 0x31, 0xeb, 0xa5,
	0x62, 0xec, 0x77, 0xea, 0xb2, 0x33, 0x0b, 0x5d, 0xe8, 0x2f, 0x74, 0xca, 0x89, 0x8b, 0x2d, 0x74,
	0x8a, 0xac, 0xe2, 0x01, 0xac, 0x31, 0x48, 0xf0, 0x31, 0x6c, 0x5d, 0xe3, 0x31, 0x48, 0x16, 0x64,
	0x78, 0xd4, 0x8c, 0x13, 0xb1, 0xa3, 0x41, 0x3a, 0x45, 0xbc, 0x57, 0x8d, 0x98, 0xd2, 0x4f, 0x13,
	0x2c, 0x49, 0x9c, 0xf3, 0x94, 0x77, 0xae, 0x4d, 0xc6, 0x36, 0xed, 0x9a, 0x14, 0x3f, 0x87, 0x2c,
	0xde, 0x20, 0xab, 0x33, 0x70, 0x43, 0x66, 0xc1, 0x87, 0x8b, 0xa5, 0xa1, 0x8f, 0x12, 0x42, 0x6a,
	0x42, 0xd6, 0xfd, 0x8c, 0xe8, 0x12, 0x2e, 0xaa, 0x46, 0xac, 0x7a, 0x4a, 0xd2, 0x76, 0x05, 0x7c,
	0x0d, 0x6c, 0xc1, 0x26, 0x45, 0x92, 0xa2, 0x00, 0xcb, 0x43, 0x75, 0x62, 0xe0, 0x83, 0xb1, 0x49,
	0x9b, 0xa4, 0xb4, 0x0b, 0x19, 0x1e, 0xaf, 0x51, 0x86, 0x63, 0x3a, 0x58, 0x1c, 0x4d, 0x65, 0xf0,
	0x23, 0x63, 0x96, 0xa6, 0x2a, 0x82, 0x8b, 0x94, 0x1e, 0xc3, 0x92, 0x1b, 0x5d, 0xe3, 0x22, 0x8e,
	0x20, 0xc5, 0x62, 0x2b, 0x9a, 0x96, 0x3c, 0xde, 0xe5, 0x76, 0x79, 0x59, 0x7d, 0x47, 0x89, 0xd5,
	0xa7, 0xf3, 0x93, 0x63, 0x05, 0xc1, 0x23, 0xd1, 0x48, 0x65, 0x44, 0x3a, 0xbe, 0xf4, 0x14, 0x20,
	0x10, 0x6d, 0xe3, 0xee, 0xcf, 0x50, 0xd3, 0x20, 0x1b, 0x17, 0xf5, 0x8b, 0x24, 0x64, 0xbd, 0xb0,
	0x88, 0x98, 0x91, 0xd9, 0xd5, 0x87, 0x9a, 0xd2, 0x7d, 0x8d, 0x65, 0x8f, 0x62, 0xbd, 0x72, 0x31,
	0xd1, 0x05, 0xe7, 0x95, 0x7b, 0x7c, 0xac, 0x66, 0xc9, 0x79, 0x7d, 0xfe, 0xd4, 0x1c, 0x32, 0x72,
	0xd3, 0x25, 0x88, 0xb7, 0xe1, 0x86, 0x2b, 0x66, 0xac, 0xf6, 0xce, 0x35, 0x87, 0x10, 0x99, 0x37,
	0x2c, 0x21, 0x6a, 0xc9, 0xdb, 0x9c, 0x84, 0x05, 0x30, 0xd9, 0xb9, 0x0b, 0x88, 0x58, 0xa6, 0x85,
	0xb7, 0xe0, 0x96, 0x2b, 0x8c, 0xc2, 0x8e, 0x16, 0xb0, 0xc1, 0x0a, 0x31, 0x6c, 0xc1, 0x7a, 0x98,
	0x81, 0x5b, 0x04, 0xbc, 0x2b, 0xe9, 0x3a, 0x53, 0x8d, 0x72, 0x54, 0x9f, 0x07, 0x89, 0xb8, 0x0f,
	0x7b, 0xdf, 0x29, 0xe9, 0x21, 0xe4, 0x43, 0x19, 0x01, 0x0b, 0x6f, 0x6c, 0x34, 0xc6, 0x13, 0x07,
	0xe3, 0xba, 0x77, 0xab, 0x67, 0xdc, 0x84, 0xd2, 0xff, 0x26, 0x20, 0xeb, 0x25, 0x80, 0xb0, 0x57,
	0xa3, 0x6b, 0x04, 0x1d, 0xc6, 0x77, 0xea, 0x22, 0x08, 0x61, 0x97, 0x71, 0x7b, 0x88, 0x24, 0x2b,
	0xff, 0xa7, 0xf9, 0x37, 0xb0, 0x9a, 0x8e, 0x3c, 0x06, 0x6e, 0x5a, 0xdc, 0x4d, 0x35, 0x2c, 0xdb,
	0xb5, 0x26, 0xab, 0x9e, 0x2d, 0xf4, 0x2d, 0x7c, 0x19, 0x64, 0x45, 0xa9, 0x0c, 0xf9, 0x50, 0x66,
	0x99, 0x79, 0x72, 0x51, 0x37, 0x4a, 0x86, 0xdd, 0x88, 0xbb, 0xec, 0x37, 0xb0, 0xe4, 0xa6, 0x18,
	0xdc, 0xde, 0x98, 0x8c, 0xba, 0x18, 0xc6, 0x12, 0x14, 0x6a, 0xe2, 0x4a, 0xf8, 0x43, 0x02, 0x56,
	0xa6, 0xa9, 0xe6, 0x4d, 0x2a, 0x26, 0x5c, 0x03, 0x08, 0x33, 0x37, 0x4b, 0x42, 0xa9, 0xf0, 0x43,
	0xc3, 0xf5, 0x54, 0xa6, 0xd2, 0x8c, 0xe1, 0xd0, 0x2f, 0x1d, 0x73, 0x1c, 0xb1, 0x58, 0x4a, 0x7c,
	0x07, 0xee, 0x04, 0x36, 0x73, 0x03, 0x57, 0x80, 0x2b, 0x43, 0x5c, 0xf7, 0x60, 0x93, 0x81, 0xed,
	0xa1, 0xa6, 0x8d, 0xb1, 0xb8, 0x0f, 0xac, 0x2f, 0xd1, 0x3a, 0x1e, 0xb9, 0x8b, 0x9e, 0x38, 0x73,
	0xe4, 0x2c, 0xf9, 0xca, 0x17, 0x90, 0xa6, 0x84, 0x78, 0x3d, 0xf3, 0xfe, 0x7b, 0x02, 0xf2, 0xa1,
	0x9c, 0xf8, 0x55, 0x40, 0x4c, 0x61, 0xef, 0xf1, 0x15, 0xd2, 0xe9, 0x4e, 0x0d, 0x71, 0x91, 0x28,
	0xb0, 0xfd, 0x00, 0xd2, 0x44, 0x5e, 0x81, 0x4c, 0xbd, 0x7d, 0x54, 0x69, 0x0a, 0xff, 0x80, 0x8d,
	0xd8, 0xd2, 0x7e, 0xa7, 0xdd, 0xae, 0xd7, 0x84, 0x04, 0x23, 0xb7, 0xeb, 0x9d, 0xd2, 0x91, 0x90,
	0x94, 0xf6, 0x60, 0xd9, 0xcf, 0xae, 0x71, 0x63, 0x0c, 0x06, 0x5f, 0x9e, 0x59, 0xe3, 0x02, 0x7e,
	0x92, 0x80, 0x65, 0x3f, 0xa7, 0xce, 0xbc, 0x96, 0x17, 0x93, 0xe1, 0xac, 0xc1, 0xf0, 0xbc, 0x44,
	0x0f, 0x58, 0x8d, 0x05, 0x95, 0x31, 0x3e, 0x04, 0x3d, 0xb4, 0x61, 0xda, 0xf3, 0x04, 0x6f, 0x89,
	0x23, 0x32, 0xde, 0x9b, 0xbb, 0xd0, 0x8d, 0xbe, 0x79, 0x11, 0xb9, 0xdd, 0x24, 0x0b, 0xeb, 0xee,
	0x0a, 0xe7, 0xe7, 0x8f, 0xe7, 0x57, 0x09, 0x48, 0x53, 0x16, 0xbf, 0x0f, 0x45, 0xda, 0x9e, 0x02,
	0x12, 0x3b, 0xf6, 0x8c, 0x8a, 0x2c, 0x03, 0xf4, 0x54, 0x63, 0xe6, 0xe0, 0x78, 0x48, 0x6b, 0x62,
	0x18, 0x61, 0x8f, 0x4a, 0x79, 0x3a, 0x11, 0x84, 0xef, 0xc8, 0x0f, 0x2e, 0x41, 0x41, 0xef, 0x0f,
	0xa3, 0xde, 0xe9, 0x39, 0x7e, 0xde, 0x7a, 0x15, 0x3d, 0xb9, 0xb7, 0xe2, 0xbc, 0x8a, 0xf8, 0x24,
	0xad, 0x48, 0xbf, 0x4d, 0x80, 0x38, 0xa7, 0xb4, 0xde, 0x9c, 0xd9, 0x26, 0x41, 0x4e, 0xbe, 0x11,
	0xd9, 0x22, 0x49, 0x54, 0xec, 0x95, 0xa7, 0xf1, 0x8e, 0xcf, 0x39, 0x64, 0x48, 0x52, 0xdc, 0x67,
	0xc9, 0xff, 0xe3, 0x2b, 0x55, 0x32, 0x3b, 0xed, 0x57, 0xc7, 0xda, 0x4b, 0x6d, 0x28, 0x7d, 0x00,
	0x59, 0xf7, 0x93, 0xf9, 0xc7, 0x90, 0x7d, 0xb8, 0x31, 0xc5, 0xeb, 0xed, 0xa7, 0x47, 0x90, 0x7e,
	0x87, 0x15, 0x31, 0x6f, 0x5d, 0xc5, 0xcf, 0x20, 0xeb, 0xee, 0x47, 0xec, 0x97, 0xf7, 0x26, 0x1c,
	0xe3, 0xd1, 0xc4, 0x13, 0xb8, 0xe1, 0xf2, 0x62, 0x9f, 0x8f, 0x55, 0xba, 0x6a, 0x0d, 0x78, 0xcd,
	0x94, 0xdb, 0xdb, 0x8b, 0x2d, 0xa5, 0xec, 0x21, 0xc5, 0x0a, 0xac, 0x7a, 0xe2, 0xf8, 0xf9, 0x53,
	0x24, 0x6a, 0x27, 0xb6, 0x28, 0xae, 0x7e, 0x15, 0xd6, 0xa6, 0x4d, 0x26, 0x15, 0xf0, 0xae, 0x65,
	0x1f, 0xc7, 0x10, 0xe4, 0x01, 0x29, 0xb8, 0xe2, 0xbd, 0xe4, 0xf8, 0xd9, 0x50, 0x8e, 0x36, 0xc6,
	0xa6, 0x9a, 0x89, 0x79, 0xb4, 0x58, 0x4c, 0x89, 0x40, 0x2d, 0xc4, 0xb0, 0xd3, 0xf4, 0x55, 0x47,
	0x65, 0x15, 0xab, 0xa1, 0xf5, 0xd8, 0x44, 0x02, 0x7d, 0x30, 0xe6, 0x69, 0xca, 0x08, 0x2c, 0xf9,
	0x38, 0x6c, 0x05, 0x0b, 0xbe, 0x99, 0xf9, 0x81, 0xd6, 0x49, 0xd2, 0x6e, 0x0c, 0x49, 0x1e, 0x8e,
	0xce, 0x54, 0x07, 0x61, 0x30, 0x34, 0xbb, 0xf8, 0x9c, 0x7d, 0x43, 0xb9, 0x3d, 0xf4, 0x47, 0x8b,
	0x45, 0x1d, 0x12, 0xd2, 0x37, 0x14, 0xbd, 0x98, 0x26, 0x6c, 0x45, 0x05, 0x06, 0x4b, 0xf4, 0xcd,
	0xeb, 0xf4, 0xab, 0x35, 0xb8, 0xe5, 0xca, 0x9c, 0xe9, 0x7f, 0x6f, 0x5d, 0x47, 0x1e, 0x5a, 0xcf,
	0x95, 0x17, 0x6e, 0x83, 0x77, 0xe3, 0xaa, 0xec, 0x15, 0x7e, 0xe8, 0x14, 0xae, 0x20, 0xea, 0x5e,
	0xf8, 0x40, 0xe0, 0x51, 0x5c, 0x29, 0x14, 0x00, 0x4f, 0x60, 0x33, 0x20, 0x22, 0xa8, 0x5a, 0xf1,
	0x3a, 0xaa, 0xa1, 0x8f, 0x9d, 0x6b, 0x96, 0xa1, 0xa1, 0x38, 0xaf, 0x15, 0xcb, 0xc6, 0xf5, 0xb1,
	0x67, 0x04, 0xf4, 0xf3, 0xc7, 0x53, 0x48, 0x8f, 0xd0, 0x57, 0xa8, 0x36, 0xbc, 0xbc, 0x49, 0x77,
	0xf1, 0x27, 0xc8, 0x8d, 0x6d, 0x59, 0x74, 0x44, 0xc0, 0x1b, 0xed, 0x18, 0x4f, 0x37, 0x54, 0x13,
	0x1e, 0x63, 0x0e, 0xf2, 0xe5, 0xd8, 0x93, 0xd1, 0x48, 0xc5, 0xb0, 0x04, 0x71, 0x3d, 0xd3, 0x13,
	0xd5, 0xe2, 0x40, 0x16, 0x9e, 0xec, 0x9e, 0xa5, 0x69, 0x86, 0xd2, 0xb5, 0x58, 0x73, 0x60, 0xb0,
	0xe9, 0x03, 0xef, 0x51, 0x63, 0x84, 0xa7, 0x16, 0x41, 0xf7, 0x7d, 0x24, 0x3a, 0xf9, 0x86, 0xad,
	0x0f, 0x0c, 0x36, 0x48, 0xc6, 0x3c, 0xe3, 0xe7, 0x20, 0xb7, 0x7d, 0x7d, 0x1a, 0x43, 0x22, 0xa1,
	0x5b, 0x2e, 0x98, 0x2a, 0x37, 0xbc, 0x39, 0x4f, 0xa6, 0x63, 0x69, 0xc6, 0x00, 0x1f, 0xe2, 0x6a,
	0xdc, 0x9b, 0x73, 0xc5, 0xb9, 0x38, 0x16, 0x3d, 0x79, 0x5b, 0xa9, 0x58, 0x9a, 0x6a, 0xd3, 0xe0,
	0x38, 0xe6, 0x15, 0x9c, 0x12, 0xac, 0x49, 0x28, 0xa6, 0x25, 0xf9, 0x64, 0xf4, 0x58, 0x7c, 0x8c,
	0x11, 0x43, 0x4b, 0xe6, 0xe0, 0x91, 0xa3, 0xb5, 0xe1, 0x26, 0x97, 0x39, 0x19, 0x8f, 0x87, 0x3a,
	0xea, 0xef, 0xb8, 0x71, 0xf9, 0xc6, 0xc2, 0x8c, 0x17, 0x14, 0xea, 0xa3, 0x79, 0x70, 0xfe, 0x1a,
	0x80, 0x4b, 0x25, 0x51, 0x6b, 0x0b, 0x47, 0x25, 0x41, 0x51, 0x0c, 0x22, 0xfd, 0x05, 0xbb, 0x0c,
	0x2f, 0x95, 0xb1, 0xa1, 0x3b, 0x75, 0xcb, 0xbc, 0x7c, 0xe0, 0x55, 0xc8, 0x5d, 0xb8, 0xe9, 0x25,
	0x24, 0xb4, 0xe9, 0x30, 0x5a, 0x8c, 0x60, 0x63, 0xe4, 0x2d, 0x4f, 0xc6, 0xd1, 0x72, 0x04, 0x17,
	0x79, 0xf5, 0x16, 0x46, 0xfa, 0xbd, 0x1d, 0x5f, 0x0c, 0xe2, 0x32, 0xde, 0x9e, 0xee, 0x41, 0x22,
	0x85, 0x11, 0xaf, 0x9b, 0xb1, 0x74, 0x72, 0x7d, 0xda, 0x7c, 0xf1, 0x22, 0x22, 0x9b, 0x37, 0x7a,
	0x58, 0x79, 0x07, 0x38, 0x82, 0x1b, 0x50, 0xbf, 0x27, 0xf5, 0x40, 0x98, 0xc9, 0xbc, 0xa8, 0xfd,
	0x90, 0xde, 0x5d, 0x97, 0x86, 0x94, 0x09, 0xaf, 0xb5, 0x43, 0x8b, 0xfb, 0x44, 0xae, 0x33, 0x16,
	0x13, 0x9e, 0x74, 0x23, 0x58, 0x78, 0x79, 0x1b, 0xba, 0x13, 0x84, 0xcf, 0xfc, 0x5f, 0x82, 0x78,
	0x4e, 0xf6, 0xcd, 0x3b, 0x2d, 0x4c, 0xa8, 0xac, 0xec, 0x4d, 0x2c, 0xf4, 0x11, 0x8f, 0xcc, 0xeb,
	0xd9, 0x9f, 0x27, 0xa0, 0x10, 0xc9, 0xc3, 0xa5, 0x50, 0x01, 0xff, 0xf1, 0x55, 0xf3, 0x38, 0xaf,
	0xe2, 0x67, 0xea, 0xa0, 0x68, 0xe3, 0xb0, 0xfd, 0xc4, 0x2d, 0xec, 0xf3, 0xb0, 0x5c, 0xad, 0xc9,
	0xa5, 0x76, 0xf5, 0x79, 0x05, 0x6b, 0xfb, 0x2c, 0xa4, 0x8e, 0xeb, 0xa7, 0x58, 0xd8, 0x63, 0x91,
	0x7f, 0x52, 0x29, 0x57, 0x3b, 0x27, 0x42, 0x52, 0x5c, 0x86, 0xf4, 0x51, 0xf5, 0xf0, 0x48, 0x48,
	0x49, 0x3f, 0x26, 0x01, 0x02, 0xf9, 0x3e, 0xb4, 0x8b, 0x5f, 0xaf, 0x07, 0xf4, 0x13, 0x9f, 0xc1,
	0x2a, 0xa6, 0xf1, 0xf1, 0x50, 0x7d, 0xed, 0xba, 0x6e, 0x8a, 0xb4, 0x7a, 0x1a, 0x2b, 0x8b, 0x33,
	0x18, 0xd7, 0x89, 0x5b, 0xe6, 0x04, 0xd6, 0x78, 0xc4, 0xb4, 0x55, 0x6c, 0xf0, 0xe8, 0x87, 0x95,
	0x74, 0x5c, 0x71, 0x14, 0x2f, 0x5b, 0x88, 0x3b, 0x41, 0xd8, 0x0e, 0xfb, 0x47, 0xdc, 0x87, 0x15,
	0xaa, 0x64, 0x49, 0x50, 0x86, 0x04, 0xc5, 0xc8, 0x8f, 0x55, 0x84, 0xf8, 0x32, 0xd8, 0x90, 0xa4,
	0x10, 0xa9, 0x5c, 0xae, 0x7c, 0x7f, 0x61, 0x7c, 0xdc, 0xfb, 0x63, 0x0d, 0x06, 0xb1, 0xe2, 0xed,
	0xd4, 0xea, 0x35, 0x76, 0x79, 0xf8, 0x75, 0xd8, 0x68, 0xb6, 0xf0, 0xf6, 0xf0, 0xab, 0x52, 0x3e,
	0xac, 0xf0, 0xbb, 0xeb, 0x9c, 0xb4, 0x5b, 0x42, 0x8a, 0x7d, 0x95, 0xca, 0x27, 0xb2, 0x90, 0x66,
	0x77, 0x5b, 0x79, 0x5e, 0xae, 0x2b, 0x8f, 0x85, 0x8c, 0xff, 0x2d, 0x0b, 0x4b, 0xb8, 0xc3, 0x0a,
	0x0a, 0x52, 0xbe, 0x55, 0x9a, 0xed, 0xb6, 0x90, 0x65, 0xbd, 0xdd, 0x51, 0xab, 0xdc, 0x90, 0x85,
	0x65, 0xfe, 0xd9, 0xc1, 0xcf, 0x15, 0x72, 0x86, 0x16, 0x7e, 0x01, 0xfb, 0xaa, 0x96, 0x2b, 0x35,
	0x21, 0xe7, 0x0b, 0xd9, 0x17, 0xf2, 0xe4, 0x41, 0xed, 0x8a, 0xb0, 0xca, 0x30, 0x95, 0xa3, 0x66,
	0xa3, 0x2c, 0x14, 0x38, 0xbc, 0x21, 0x37, 0x84, 0xb5, 0x69, 0x1f, 0x29, 0x48, 0xff, 0x93, 0x84,
	0xd5, 0x70, 0xad, 0xf6, 0x77, 0x7f, 0xaa, 0x43, 0x3e, 0x78, 0xd0, 0xed, 0xaf, 0x21, 0xc3, 0xcf,
	0x8a, 0x76, 0x3b, 0xa9, 0x7e, 0x5b, 0x29, 0xe3, 0x35, 0x2f, 0x41, 0x92, 0x7a, 0x6f, 0xb4, 0x74,
	0xfd, 0xe0, 0x80, 0xdf, 0x71, 0xb9, 0xfe, 0x7d, 0x05, 0xef, 0x58, 0x40, 0x38, 0x7e, 0x29, 0xad,
	0x4e, 0xab, 0x51, 0xa9, 0x95, 0x85, 0xb4, 0xf4, 0xdf, 0x09, 0x58, 0x8b, 0x54, 0xb1, 0x2c, 0xae,
	0x4e, 0x4b, 0xd7, 0x39, 0xcd, 0x1c, 0xc5, 0xd5, 0x29, 0xc7, 0x4c, 0x5b, 0x17, 0x59, 0x0f, 0xf5,
	0x8f, 0x7e, 0x42, 0x98, 0xae, 0x4f, 0x1b, 0x40, 0x1e, 0x2f, 0xff, 0x0d, 0xef, 0x3d, 0x5c, 0x65,
	0xfe, 0xad, 0x8c, 0x17, 0x23, 0x03, 0xc2, 0x95, 0x79, 0x03, 0x42, 0xa0, 0xa6, 0xf4, 0x37, 0x09,
	0x80, 0x40, 0x8d, 0x8c, 0xa7, 0x20, 0x89, 0xa6, 0x31, 0xef, 0x2a, 0x68, 0x69, 0x76, 0x14, 0x90,
	0x74, 0x47, 0x9a, 0xeb, 0xb4, 0x1e, 0xb9, 0xc7, 0x94, 0xdf, 0xe1, 0xdf, 0x75, 0x65, 0x87, 0xae,
	0x31, 0x3d, 0xb3, 0x1c, 0xba, 0xc5, 0xe9, 0xe4, 0x40, 0x82, 0x02, 0xd7, 0xd5, 0xbf, 0x44, 0x7f,
	0x76, 0x20, 0x7d, 0x8e, 0xa9, 0xc3, 0xf5, 0xde, 0xed, 0x5d, 0x48, 0xd3, 0x23, 0xc8, 0x41, 0xb6,
	0x56, 0x57, 0xca, 0x72, 0x5b, 0x46, 0x4f, 0xf5, 0x9d, 0x36, 0xe1, 0x3a, 0x6d, 0xd2, 0x73, 0xda,
	0x94, 0xf4, 0x0d, 0x14, 0x22, 0xe5, 0x78, 0x78, 0x9c, 0xb3, 0x30, 0x02, 0x4a, 0x3f, 0xa2, 0xdf,
	0x53, 0x45, 0x8e, 0xde, 0xe6, 0xe7, 0xe9, 0x39, 0x13, 0xc1, 0x8d, 0x40, 0x89, 0x10, 0x15, 0x29,
	0x81, 0x38, 0x3e, 0x33, 0x0d, 0x2d, 0x8c, 0x4c, 0xb9, 0xd5, 0xc9, 0x9c, 0x4b, 0x99, 0x1a, 0x6e,
	0xfb, 0x8d, 0x17, 0x93, 0x09, 0xf2, 0x4c, 0xdf, 0x41, 0x48, 0xce, 0x74, 0x02, 0xb3, 0x35, 0xeb,
	0xfc, 0xd9, 0x37, 0x2e, 0x7a, 0xae, 0x46, 0x8b, 0xb7, 0xa3, 0x8f, 0x60, 0xe5, 0x0d, 0x4b, 0xae,
	0xdb, 0xf1, 0xa5, 0xb7, 0xe0, 0x16, 0x1f, 0x48, 0xb9, 0x76, 0x0f, 0x1c, 0x2a, 0x47, 0x7a, 0x6f,
	0x83, 0xe4, 0x4d, 0xc0, 0xe6, 0xf0, 0xe4, 0x17, 0x0d, 0xd2, 0x57, 0x89, 0xe1, 0x01, 0xdc, 0x0f,
	0x33, 0xa8, 0xfd, 0x1f, 0x26, 0xb6, 0x13, 0x1a, 0xbd, 0x16, 0xbc, 0x22, 0x50, 0x37, 0x30, 0x2c,
	0xce, 0x08, 0x5a, 0xf3, 0x04, 0x61, 0xb9, 0xe6, 0xf9, 0x1f, 0xba, 0x98, 0xa2, 0x19, 0x6a, 0x77,
	0x18, 0x12, 0x24, 0x78, 0x37, 0xed, 0x0d, 0x1e, 0x58, 0xa7, 0xa8, 0x60, 0x62, 0x31, 0x06, 0x9a,
	0x4d, 0x7f, 0x1c, 0x92, 0x14, 0x1f, 0xc2, 0xb6, 0xfb, 0xf7, 0x2d, 0x7e, 0x90, 0x9e, 0x23, 0x49,
	0x24, 0xde, 0xf7, 0xe0, 0xde, 0x1b, 0x79, 0xb9, 0x07, 0xae, 0x7b, 0x56, 0x98, 0xf2, 0x85, 0x7d,
	0x60, 0xc3, 0x8b, 0x83, 0x61, 0x06, 0x8e, 0xbe, 0x79, 0xd9, 0x6f, 0x0d, 0x9b, 0xde, 0x25, 0x84,
	0x17, 0x27, 0xc6, 0xb9, 0x61, 0x5e, 0x70, 0x17, 0xa2, 0xa1, 0x40, 0x52, 0x7c, 0x0c, 0x0f, 0x5c,
	0xe9, 0xf4, 0x7b, 0xd0, 0xa5, 0x8a, 0x15, 0x29, 0x16, 0x3d, 0x82, 0x77, 0x16, 0x20, 0xf8, 0x19,
	0x6e, 0xd3, 0x30, 0xed, 0x5d, 0xb8, 0x1b, 0xe5, 0x0e, 0x2b, 0x29, 0x91, 0xd0, 0xb7, 0xe1, 0xf6,
	0x3c, 0x36, 0x2e, 0x69, 0x8b, 0x24, 0x3d, 0x85, 0x47, 0x23, 0xf5, 0x95, 0x12, 0xfb, 0xb4, 0x77,
	0x48, 0xf0, 0x0e, 0xbc, 0x17, 0x40, 0x5d, 0xc6, 0x7f, 0x97, 0x82, 0xea, 0x13, 0x58, 0x0d, 0xa5,
	0xe5, 0xed, 0x6d, 0x37, 0x28, 0x5d, 0x92, 0x3c, 0xa5, 0xff, 0x4c, 0x46, 0x7e, 0xab, 0x91, 0x43,
	0xf5, 0xdb, 0x93, 0xab, 0x75, 0xf5, 0xbc, 0x7a, 0x9b, 0xff, 0x73, 0x0f, 0x1f, 0xa8, 0xff, 0x5f,
	0xa0, 0x6e, 0xab, 0x96, 0x8f, 0xdd, 0xba, 0xad, 0x54, 0x39, 0x3e, 0xe6, 0xe3, 0xf4, 0xc6, 0x11,
	0x2b, 0xe6, 0x28, 0xa9, 0x9f, 0x56, 0x0f, 0xaa, 0x98, 0xd4, 0xb1, 0x2c, 0xdb, 0x3f, 0xee, 0x54,
	0xda, 0x75, 0x2c, 0x9c, 0x78, 0xf5, 0xd6, 0x2a, 0x35, 0x2b, 0x58, 0x78, 0x65, 0x98, 0x16, 0x72,
	0xa3, 0x81, 0xa5, 0x1b, 0x2b, 0xf3, 0x5a, 0x58, 0x55, 0x65, 0xc5, 0x35, 0xc8, 0x75, 0xb0, 0x9e,
	0x2f, 0xd5, 0x3b, 0xb5, 0x36, 0x6a, 0xcc, 0xfe, 0xea, 0x28, 0x57, 0x7f, 0x5e, 0x69, 0x7a, 0x84,
	0x15, 0x16, 0xa2, 0xcb, 0x95, 0x03, 0xb9, 0x73, 0xdc, 0xc6, 0x22, 0xae, 0x00, 0x70, 0x70, 0x2c,
	0xb7, 0x8e, 0x8e, 0xb1, 0xc0, 0x6f, 0x0b, 0x39, 0xe9, 0x3f, 0xb0, 0x5e, 0x88, 0xce, 0x16, 0xe8,
	0xf7, 0x0b, 0xde, 0xfb, 0xf5, 0x54, 0x4c, 0x7a, 0xec, 0x71, 0xf9, 0xbf, 0x5f, 0x5d, 0xa6, 0x2c,
	0x7b, 0xdb, 0x23, 0xdd, 0x50, 0xfa, 0x96, 0xaa, 0x1b, 0xa1, 0xe5, 0x94, 0xbf, 0xcc, 0x2e, 0x78,
	0x66, 0x99, 0x17, 0x0a, 0x3f, 0x4b, 0x80, 0x30, 0x33, 0x99, 0xa8, 0x84, 0xae, 0xe7, 0x93, 0xab,
	0xcf, 0x36, 0xde, 0x54, 0x60, 0x6f, 0x7f, 0x31, 0xbd, 0x98, 0xb2, 0xdc, 0x7c, 0xc6, 0xbb, 0xa1,
	0x72, 0xf5, 0x24, 0xd2, 0x0d, 0xe1, 0x1d, 0x71, 0x63, 0xa5, 0xe8, 0x97, 0x90, 0x26, 0x7d, 0xa7,
	0xa5, 0xf7, 0x41, 0x9c, 0x33, 0xf3, 0x98, 0xad, 0x68, 0xa5, 0x5f, 0x63, 0xcb, 0x17, 0x99, 0x19,
	0x5c, 0xb9, 0x65, 0x08, 0xe3, 0xe3, 0xb6, 0x0c, 0x47, 0xae, 0x82, 0xeb, 0xb0, 0xc6, 0x3a, 0x06,
	0xa5, 0xde, 0x54, 0x3a, 0xb5, 0x67, 0xb5, 0xfa, 0x69, 0x8d, 0x3b, 0x61, 0xa3, 0x5e, 0x6f, 0xa2,
	0xb2, 0xd8, 0x11, 0x9e, 0xd4, 0xcb, 0x95, 0xa6, 0xdc, 0x76, 0xfd, 0xf0, 0xb0, 0x5e, 0x2f, 0xa3,
	0xb6, 0xa8, 0xf8, 0x61, 0xb3, 0x22, 0x33, 0x65, 0xbf, 0x82, 0x7c, 0x68, 0x90, 0x72, 0xd5, 0xd4,
	0xfd, 0xcb, 0x04, 0x88, 0x73, 0x66, 0x27, 0x87, 0x21, 0x3b, 0x7c, 0x7a, 0x9d, 0xf9, 0x4b, 0x5c,
	0x5b, 0x7c, 0x39, 0xaf, 0x7b, 0x8a, 0x6f, 0x80, 0x3f, 0x27, 0x61, 0x7d, 0xde, 0x9c, 0xe6, 0x28,
	0xa4, 0xc1, 0x67, 0xd7, 0x1a, 0xf6, 0xc4, 0x55, 0xe1, 0x4f, 0x5e, 0x24, 0xc1, 0x07, 0x5d, 0xad,
	0x3d, 0x97, 0x8f, 0xab, 0x2c, 0xc0, 0xb1, 0x16, 0xa0, 0xda, 0x2a, 0xd5, 0x6b, 0xb5, 0x4a, 0xa9,
	0x4d, 0xa5, 0xd7, 0x26, 0x88, 0x55, 0x7c, 0xfa, 0xcd, 0x03, 0xb9, 0x54, 0x51, 0x70, 0x4d, 0xde,
	0x3f, 0x46, 0x7a, 0x32, 0xd4, 0xf9, 0xa7, 0xd8, 0xff, 0x5a, 0x25, 0xb9, 0x56, 0xab, 0xd6, 0x0e,
	0x31, 0xc8, 0x88, 0x50, 0x90, 0x3b, 0xd8, 0xa7, 0xd5, 0xda, 0xd5, 0x92, 0xdc, 0x66, 0xb4, 0x0c,
	0x0b, 0x24, 0x72, 0xab, 0x55, 0x2f, 0x55, 0x39, 0x61, 0x89, 0xc5, 0x0e, 0x8f, 0x80, 0x02, 0xb3,
	0x6c, 0xa3, 0x83, 0x7a, 0xa7, 0xa9, 0x9c, 0xca, 0xdf, 0x29, 0x47, 0x72, 0xad, 0xdc, 0x3a, 0x92,
	0x9f, 0x55, 0x04, 0xf6, 0xc7, 0x90, 0x6b, 0x87, 0xcd, 0x7a, 0xa7, 0x11, 0x20, 0xb2, 0xbf, 0x7d,
	0x5c, 0x29, 0xd5, 0x4f, 0x1a, 0xc7, 0x15, 0x86, 0x05, 0x0a, 0x4a, 0xf5, 0xe6, 0x89, 0x5c, 0xc3,
	0x20, 0x84, 0xba, 0xaf, 0x76, 0xf0, 0x20, 0xd5, 0x76, 0x15, 0x95, 0xfa, 0x1e, 0xd7, 0xf3, 0xd2,
	0x7f, 0x25, 0x61, 0xc5, 0x9f, 0x66, 0x5d, 0xe1, 0x47, 0xce, 0xe8, 0x20, 0x2c, 0xae, 0x71, 0xff,
	0xdf, 0x33, 0xae, 0x9b, 0x28, 0xc8, 0xb0, 0xf8, 0xa1, 0xf8, 0x46, 0x4a, 0x30, 0x23, 0xd5, 0x6b,
	0x0a, 0x96, 0xbb, 0xb5, 0x4a, 0xfb, 0xb4, 0xde, 0x7c, 0xd6, 0x12, 0x58, 0x0b, 0xb0, 0x86, 0xb4,
	0xd0, 0x0d, 0xb0, 0xdf, 0xc6, 0x04, 0x24, 0xfa, 0x14, 0xa5, 0xd5, 0x66, 0x6d, 0x78, 0x94, 0xda,
	0xd8, 0x6b, 0xa0, 0x95, 0x8b, 0xb0, 0x11, 0xe5, 0xa5, 0x95, 0x25, 0x66, 0xa2, 0x56, 0xfd, 0xa0,
	0xad, 0x60, 0x1f, 0x9d, 0xdd, 0xfe, 0x17, 0x58, 0x8b, 0xfe, 0xe1, 0x27, 0x5a, 0xad, 0x55, 0xad,
	0xe1, 0x1d, 0x97, 0x8e, 0xe4, 0xe6, 0x21, 0x65, 0x3b, 0x7c, 0x97, 0x18, 0xdc, 0xdb, 0x42, 0x42,
	0x4a, 0x2e, 0x27, 0xd8, 0x2f, 0xfc, 0xa5, 0x4e, 0xb3, 0x89, 0x97, 0x8a, 0x79, 0x8f, 0x11, 0xb0,
	0x91, 0xe1, 0x88, 0x4e, 0xad, 0x71, 0xdc, 0x39, 0x64, 0x98, 0x14, 0x5b, 0xf8, 0x6b, 0x00, 0x00,
	0x00, 0xff, 0xff, 0xe6, 0xc9, 0x82, 0x96, 0x7a, 0x2d, 0x00, 0x00,
}
