/*
 *
 *    Copyright (c) 2022 Project CHIP Authors
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */

// THIS FILE IS GENERATED BY ZAP

#pragma once

#include <app/util/basic-types.h>

namespace chip {
namespace app {
namespace Clusters {

namespace Globals {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = 0x0000FFF8;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = 0x0000FFF9;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = 0x0000FFFA;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = 0x0000FFFB;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = 0x0000FFFC;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = 0x0000FFFD;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Globals

namespace Identify {
namespace Attributes {

namespace IdentifyTime {
static constexpr AttributeId Id = 0x00000000;
} // namespace IdentifyTime

namespace IdentifyType {
static constexpr AttributeId Id = 0x00000001;
} // namespace IdentifyType

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Identify

namespace Groups {
namespace Attributes {

namespace NameSupport {
static constexpr AttributeId Id = 0x00000000;
} // namespace NameSupport

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Groups

namespace Scenes {
namespace Attributes {

namespace SceneCount {
static constexpr AttributeId Id = 0x00000000;
} // namespace SceneCount

namespace CurrentScene {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentScene

namespace CurrentGroup {
static constexpr AttributeId Id = 0x00000002;
} // namespace CurrentGroup

namespace SceneValid {
static constexpr AttributeId Id = 0x00000003;
} // namespace SceneValid

namespace NameSupport {
static constexpr AttributeId Id = 0x00000004;
} // namespace NameSupport

namespace LastConfiguredBy {
static constexpr AttributeId Id = 0x00000005;
} // namespace LastConfiguredBy

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Scenes

namespace OnOff {
namespace Attributes {

namespace OnOff {
static constexpr AttributeId Id = 0x00000000;
} // namespace OnOff

namespace GlobalSceneControl {
static constexpr AttributeId Id = 0x00004000;
} // namespace GlobalSceneControl

namespace OnTime {
static constexpr AttributeId Id = 0x00004001;
} // namespace OnTime

namespace OffWaitTime {
static constexpr AttributeId Id = 0x00004002;
} // namespace OffWaitTime

namespace StartUpOnOff {
static constexpr AttributeId Id = 0x00004003;
} // namespace StartUpOnOff

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OnOff

namespace OnOffSwitchConfiguration {
namespace Attributes {

namespace SwitchType {
static constexpr AttributeId Id = 0x00000000;
} // namespace SwitchType

namespace SwitchActions {
static constexpr AttributeId Id = 0x00000010;
} // namespace SwitchActions

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OnOffSwitchConfiguration

namespace LevelControl {
namespace Attributes {

namespace CurrentLevel {
static constexpr AttributeId Id = 0x00000000;
} // namespace CurrentLevel

namespace RemainingTime {
static constexpr AttributeId Id = 0x00000001;
} // namespace RemainingTime

namespace MinLevel {
static constexpr AttributeId Id = 0x00000002;
} // namespace MinLevel

namespace MaxLevel {
static constexpr AttributeId Id = 0x00000003;
} // namespace MaxLevel

namespace CurrentFrequency {
static constexpr AttributeId Id = 0x00000004;
} // namespace CurrentFrequency

namespace MinFrequency {
static constexpr AttributeId Id = 0x00000005;
} // namespace MinFrequency

namespace MaxFrequency {
static constexpr AttributeId Id = 0x00000006;
} // namespace MaxFrequency

namespace Options {
static constexpr AttributeId Id = 0x0000000F;
} // namespace Options

namespace OnOffTransitionTime {
static constexpr AttributeId Id = 0x00000010;
} // namespace OnOffTransitionTime

namespace OnLevel {
static constexpr AttributeId Id = 0x00000011;
} // namespace OnLevel

namespace OnTransitionTime {
static constexpr AttributeId Id = 0x00000012;
} // namespace OnTransitionTime

namespace OffTransitionTime {
static constexpr AttributeId Id = 0x00000013;
} // namespace OffTransitionTime

namespace DefaultMoveRate {
static constexpr AttributeId Id = 0x00000014;
} // namespace DefaultMoveRate

namespace StartUpCurrentLevel {
static constexpr AttributeId Id = 0x00004000;
} // namespace StartUpCurrentLevel

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace LevelControl

namespace BinaryInputBasic {
namespace Attributes {

namespace ActiveText {
static constexpr AttributeId Id = 0x00000004;
} // namespace ActiveText

namespace Description {
static constexpr AttributeId Id = 0x0000001C;
} // namespace Description

namespace InactiveText {
static constexpr AttributeId Id = 0x0000002E;
} // namespace InactiveText

namespace OutOfService {
static constexpr AttributeId Id = 0x00000051;
} // namespace OutOfService

namespace Polarity {
static constexpr AttributeId Id = 0x00000054;
} // namespace Polarity

namespace PresentValue {
static constexpr AttributeId Id = 0x00000055;
} // namespace PresentValue

namespace Reliability {
static constexpr AttributeId Id = 0x00000067;
} // namespace Reliability

namespace StatusFlags {
static constexpr AttributeId Id = 0x0000006F;
} // namespace StatusFlags

namespace ApplicationType {
static constexpr AttributeId Id = 0x00000100;
} // namespace ApplicationType

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BinaryInputBasic

namespace PulseWidthModulation {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace PulseWidthModulation

namespace Descriptor {
namespace Attributes {

namespace DeviceTypeList {
static constexpr AttributeId Id = 0x00000000;
} // namespace DeviceTypeList

namespace ServerList {
static constexpr AttributeId Id = 0x00000001;
} // namespace ServerList

namespace ClientList {
static constexpr AttributeId Id = 0x00000002;
} // namespace ClientList

namespace PartsList {
static constexpr AttributeId Id = 0x00000003;
} // namespace PartsList

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Descriptor

namespace Binding {
namespace Attributes {

namespace Binding {
static constexpr AttributeId Id = 0x00000000;
} // namespace Binding

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Binding

namespace AccessControl {
namespace Attributes {

namespace Acl {
static constexpr AttributeId Id = 0x00000000;
} // namespace Acl

namespace Extension {
static constexpr AttributeId Id = 0x00000001;
} // namespace Extension

namespace SubjectsPerAccessControlEntry {
static constexpr AttributeId Id = 0x00000002;
} // namespace SubjectsPerAccessControlEntry

namespace TargetsPerAccessControlEntry {
static constexpr AttributeId Id = 0x00000003;
} // namespace TargetsPerAccessControlEntry

namespace AccessControlEntriesPerFabric {
static constexpr AttributeId Id = 0x00000004;
} // namespace AccessControlEntriesPerFabric

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace AccessControl

namespace Actions {
namespace Attributes {

namespace ActionList {
static constexpr AttributeId Id = 0x00000000;
} // namespace ActionList

namespace EndpointLists {
static constexpr AttributeId Id = 0x00000001;
} // namespace EndpointLists

namespace SetupURL {
static constexpr AttributeId Id = 0x00000002;
} // namespace SetupURL

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Actions

namespace BasicInformation {
namespace Attributes {

namespace DataModelRevision {
static constexpr AttributeId Id = 0x00000000;
} // namespace DataModelRevision

namespace VendorName {
static constexpr AttributeId Id = 0x00000001;
} // namespace VendorName

namespace VendorID {
static constexpr AttributeId Id = 0x00000002;
} // namespace VendorID

namespace ProductName {
static constexpr AttributeId Id = 0x00000003;
} // namespace ProductName

namespace ProductID {
static constexpr AttributeId Id = 0x00000004;
} // namespace ProductID

namespace NodeLabel {
static constexpr AttributeId Id = 0x00000005;
} // namespace NodeLabel

namespace Location {
static constexpr AttributeId Id = 0x00000006;
} // namespace Location

namespace HardwareVersion {
static constexpr AttributeId Id = 0x00000007;
} // namespace HardwareVersion

namespace HardwareVersionString {
static constexpr AttributeId Id = 0x00000008;
} // namespace HardwareVersionString

namespace SoftwareVersion {
static constexpr AttributeId Id = 0x00000009;
} // namespace SoftwareVersion

namespace SoftwareVersionString {
static constexpr AttributeId Id = 0x0000000A;
} // namespace SoftwareVersionString

namespace ManufacturingDate {
static constexpr AttributeId Id = 0x0000000B;
} // namespace ManufacturingDate

namespace PartNumber {
static constexpr AttributeId Id = 0x0000000C;
} // namespace PartNumber

namespace ProductURL {
static constexpr AttributeId Id = 0x0000000D;
} // namespace ProductURL

namespace ProductLabel {
static constexpr AttributeId Id = 0x0000000E;
} // namespace ProductLabel

namespace SerialNumber {
static constexpr AttributeId Id = 0x0000000F;
} // namespace SerialNumber

namespace LocalConfigDisabled {
static constexpr AttributeId Id = 0x00000010;
} // namespace LocalConfigDisabled

namespace Reachable {
static constexpr AttributeId Id = 0x00000011;
} // namespace Reachable

namespace UniqueID {
static constexpr AttributeId Id = 0x00000012;
} // namespace UniqueID

namespace CapabilityMinima {
static constexpr AttributeId Id = 0x00000013;
} // namespace CapabilityMinima

namespace ProductAppearance {
static constexpr AttributeId Id = 0x00000014;
} // namespace ProductAppearance

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BasicInformation

namespace OtaSoftwareUpdateProvider {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OtaSoftwareUpdateProvider

namespace OtaSoftwareUpdateRequestor {
namespace Attributes {

namespace DefaultOTAProviders {
static constexpr AttributeId Id = 0x00000000;
} // namespace DefaultOTAProviders

namespace UpdatePossible {
static constexpr AttributeId Id = 0x00000001;
} // namespace UpdatePossible

namespace UpdateState {
static constexpr AttributeId Id = 0x00000002;
} // namespace UpdateState

namespace UpdateStateProgress {
static constexpr AttributeId Id = 0x00000003;
} // namespace UpdateStateProgress

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OtaSoftwareUpdateRequestor

namespace LocalizationConfiguration {
namespace Attributes {

namespace ActiveLocale {
static constexpr AttributeId Id = 0x00000000;
} // namespace ActiveLocale

namespace SupportedLocales {
static constexpr AttributeId Id = 0x00000001;
} // namespace SupportedLocales

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace LocalizationConfiguration

namespace TimeFormatLocalization {
namespace Attributes {

namespace HourFormat {
static constexpr AttributeId Id = 0x00000000;
} // namespace HourFormat

namespace ActiveCalendarType {
static constexpr AttributeId Id = 0x00000001;
} // namespace ActiveCalendarType

namespace SupportedCalendarTypes {
static constexpr AttributeId Id = 0x00000002;
} // namespace SupportedCalendarTypes

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TimeFormatLocalization

namespace UnitLocalization {
namespace Attributes {

namespace TemperatureUnit {
static constexpr AttributeId Id = 0x00000000;
} // namespace TemperatureUnit

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace UnitLocalization

namespace PowerSourceConfiguration {
namespace Attributes {

namespace Sources {
static constexpr AttributeId Id = 0x00000000;
} // namespace Sources

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace PowerSourceConfiguration

namespace PowerSource {
namespace Attributes {

namespace Status {
static constexpr AttributeId Id = 0x00000000;
} // namespace Status

namespace Order {
static constexpr AttributeId Id = 0x00000001;
} // namespace Order

namespace Description {
static constexpr AttributeId Id = 0x00000002;
} // namespace Description

namespace WiredAssessedInputVoltage {
static constexpr AttributeId Id = 0x00000003;
} // namespace WiredAssessedInputVoltage

namespace WiredAssessedInputFrequency {
static constexpr AttributeId Id = 0x00000004;
} // namespace WiredAssessedInputFrequency

namespace WiredCurrentType {
static constexpr AttributeId Id = 0x00000005;
} // namespace WiredCurrentType

namespace WiredAssessedCurrent {
static constexpr AttributeId Id = 0x00000006;
} // namespace WiredAssessedCurrent

namespace WiredNominalVoltage {
static constexpr AttributeId Id = 0x00000007;
} // namespace WiredNominalVoltage

namespace WiredMaximumCurrent {
static constexpr AttributeId Id = 0x00000008;
} // namespace WiredMaximumCurrent

namespace WiredPresent {
static constexpr AttributeId Id = 0x00000009;
} // namespace WiredPresent

namespace ActiveWiredFaults {
static constexpr AttributeId Id = 0x0000000A;
} // namespace ActiveWiredFaults

namespace BatVoltage {
static constexpr AttributeId Id = 0x0000000B;
} // namespace BatVoltage

namespace BatPercentRemaining {
static constexpr AttributeId Id = 0x0000000C;
} // namespace BatPercentRemaining

namespace BatTimeRemaining {
static constexpr AttributeId Id = 0x0000000D;
} // namespace BatTimeRemaining

namespace BatChargeLevel {
static constexpr AttributeId Id = 0x0000000E;
} // namespace BatChargeLevel

namespace BatReplacementNeeded {
static constexpr AttributeId Id = 0x0000000F;
} // namespace BatReplacementNeeded

namespace BatReplaceability {
static constexpr AttributeId Id = 0x00000010;
} // namespace BatReplaceability

namespace BatPresent {
static constexpr AttributeId Id = 0x00000011;
} // namespace BatPresent

namespace ActiveBatFaults {
static constexpr AttributeId Id = 0x00000012;
} // namespace ActiveBatFaults

namespace BatReplacementDescription {
static constexpr AttributeId Id = 0x00000013;
} // namespace BatReplacementDescription

namespace BatCommonDesignation {
static constexpr AttributeId Id = 0x00000014;
} // namespace BatCommonDesignation

namespace BatANSIDesignation {
static constexpr AttributeId Id = 0x00000015;
} // namespace BatANSIDesignation

namespace BatIECDesignation {
static constexpr AttributeId Id = 0x00000016;
} // namespace BatIECDesignation

namespace BatApprovedChemistry {
static constexpr AttributeId Id = 0x00000017;
} // namespace BatApprovedChemistry

namespace BatCapacity {
static constexpr AttributeId Id = 0x00000018;
} // namespace BatCapacity

namespace BatQuantity {
static constexpr AttributeId Id = 0x00000019;
} // namespace BatQuantity

namespace BatChargeState {
static constexpr AttributeId Id = 0x0000001A;
} // namespace BatChargeState

namespace BatTimeToFullCharge {
static constexpr AttributeId Id = 0x0000001B;
} // namespace BatTimeToFullCharge

namespace BatFunctionalWhileCharging {
static constexpr AttributeId Id = 0x0000001C;
} // namespace BatFunctionalWhileCharging

namespace BatChargingCurrent {
static constexpr AttributeId Id = 0x0000001D;
} // namespace BatChargingCurrent

namespace ActiveBatChargeFaults {
static constexpr AttributeId Id = 0x0000001E;
} // namespace ActiveBatChargeFaults

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace PowerSource

namespace GeneralCommissioning {
namespace Attributes {

namespace Breadcrumb {
static constexpr AttributeId Id = 0x00000000;
} // namespace Breadcrumb

namespace BasicCommissioningInfo {
static constexpr AttributeId Id = 0x00000001;
} // namespace BasicCommissioningInfo

namespace RegulatoryConfig {
static constexpr AttributeId Id = 0x00000002;
} // namespace RegulatoryConfig

namespace LocationCapability {
static constexpr AttributeId Id = 0x00000003;
} // namespace LocationCapability

namespace SupportsConcurrentConnection {
static constexpr AttributeId Id = 0x00000004;
} // namespace SupportsConcurrentConnection

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace GeneralCommissioning

namespace NetworkCommissioning {
namespace Attributes {

namespace MaxNetworks {
static constexpr AttributeId Id = 0x00000000;
} // namespace MaxNetworks

namespace Networks {
static constexpr AttributeId Id = 0x00000001;
} // namespace Networks

namespace ScanMaxTimeSeconds {
static constexpr AttributeId Id = 0x00000002;
} // namespace ScanMaxTimeSeconds

namespace ConnectMaxTimeSeconds {
static constexpr AttributeId Id = 0x00000003;
} // namespace ConnectMaxTimeSeconds

namespace InterfaceEnabled {
static constexpr AttributeId Id = 0x00000004;
} // namespace InterfaceEnabled

namespace LastNetworkingStatus {
static constexpr AttributeId Id = 0x00000005;
} // namespace LastNetworkingStatus

namespace LastNetworkID {
static constexpr AttributeId Id = 0x00000006;
} // namespace LastNetworkID

namespace LastConnectErrorValue {
static constexpr AttributeId Id = 0x00000007;
} // namespace LastConnectErrorValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace NetworkCommissioning

namespace DiagnosticLogs {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace DiagnosticLogs

namespace GeneralDiagnostics {
namespace Attributes {

namespace NetworkInterfaces {
static constexpr AttributeId Id = 0x00000000;
} // namespace NetworkInterfaces

namespace RebootCount {
static constexpr AttributeId Id = 0x00000001;
} // namespace RebootCount

namespace UpTime {
static constexpr AttributeId Id = 0x00000002;
} // namespace UpTime

namespace TotalOperationalHours {
static constexpr AttributeId Id = 0x00000003;
} // namespace TotalOperationalHours

namespace BootReason {
static constexpr AttributeId Id = 0x00000004;
} // namespace BootReason

namespace ActiveHardwareFaults {
static constexpr AttributeId Id = 0x00000005;
} // namespace ActiveHardwareFaults

namespace ActiveRadioFaults {
static constexpr AttributeId Id = 0x00000006;
} // namespace ActiveRadioFaults

namespace ActiveNetworkFaults {
static constexpr AttributeId Id = 0x00000007;
} // namespace ActiveNetworkFaults

namespace TestEventTriggersEnabled {
static constexpr AttributeId Id = 0x00000008;
} // namespace TestEventTriggersEnabled

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace GeneralDiagnostics

namespace SoftwareDiagnostics {
namespace Attributes {

namespace ThreadMetrics {
static constexpr AttributeId Id = 0x00000000;
} // namespace ThreadMetrics

namespace CurrentHeapFree {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentHeapFree

namespace CurrentHeapUsed {
static constexpr AttributeId Id = 0x00000002;
} // namespace CurrentHeapUsed

namespace CurrentHeapHighWatermark {
static constexpr AttributeId Id = 0x00000003;
} // namespace CurrentHeapHighWatermark

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace SoftwareDiagnostics

namespace ThreadNetworkDiagnostics {
namespace Attributes {

namespace Channel {
static constexpr AttributeId Id = 0x00000000;
} // namespace Channel

namespace RoutingRole {
static constexpr AttributeId Id = 0x00000001;
} // namespace RoutingRole

namespace NetworkName {
static constexpr AttributeId Id = 0x00000002;
} // namespace NetworkName

namespace PanId {
static constexpr AttributeId Id = 0x00000003;
} // namespace PanId

namespace ExtendedPanId {
static constexpr AttributeId Id = 0x00000004;
} // namespace ExtendedPanId

namespace MeshLocalPrefix {
static constexpr AttributeId Id = 0x00000005;
} // namespace MeshLocalPrefix

namespace OverrunCount {
static constexpr AttributeId Id = 0x00000006;
} // namespace OverrunCount

namespace NeighborTable {
static constexpr AttributeId Id = 0x00000007;
} // namespace NeighborTable

namespace RouteTable {
static constexpr AttributeId Id = 0x00000008;
} // namespace RouteTable

namespace PartitionId {
static constexpr AttributeId Id = 0x00000009;
} // namespace PartitionId

namespace Weighting {
static constexpr AttributeId Id = 0x0000000A;
} // namespace Weighting

namespace DataVersion {
static constexpr AttributeId Id = 0x0000000B;
} // namespace DataVersion

namespace StableDataVersion {
static constexpr AttributeId Id = 0x0000000C;
} // namespace StableDataVersion

namespace LeaderRouterId {
static constexpr AttributeId Id = 0x0000000D;
} // namespace LeaderRouterId

namespace DetachedRoleCount {
static constexpr AttributeId Id = 0x0000000E;
} // namespace DetachedRoleCount

namespace ChildRoleCount {
static constexpr AttributeId Id = 0x0000000F;
} // namespace ChildRoleCount

namespace RouterRoleCount {
static constexpr AttributeId Id = 0x00000010;
} // namespace RouterRoleCount

namespace LeaderRoleCount {
static constexpr AttributeId Id = 0x00000011;
} // namespace LeaderRoleCount

namespace AttachAttemptCount {
static constexpr AttributeId Id = 0x00000012;
} // namespace AttachAttemptCount

namespace PartitionIdChangeCount {
static constexpr AttributeId Id = 0x00000013;
} // namespace PartitionIdChangeCount

namespace BetterPartitionAttachAttemptCount {
static constexpr AttributeId Id = 0x00000014;
} // namespace BetterPartitionAttachAttemptCount

namespace ParentChangeCount {
static constexpr AttributeId Id = 0x00000015;
} // namespace ParentChangeCount

namespace TxTotalCount {
static constexpr AttributeId Id = 0x00000016;
} // namespace TxTotalCount

namespace TxUnicastCount {
static constexpr AttributeId Id = 0x00000017;
} // namespace TxUnicastCount

namespace TxBroadcastCount {
static constexpr AttributeId Id = 0x00000018;
} // namespace TxBroadcastCount

namespace TxAckRequestedCount {
static constexpr AttributeId Id = 0x00000019;
} // namespace TxAckRequestedCount

namespace TxAckedCount {
static constexpr AttributeId Id = 0x0000001A;
} // namespace TxAckedCount

namespace TxNoAckRequestedCount {
static constexpr AttributeId Id = 0x0000001B;
} // namespace TxNoAckRequestedCount

namespace TxDataCount {
static constexpr AttributeId Id = 0x0000001C;
} // namespace TxDataCount

namespace TxDataPollCount {
static constexpr AttributeId Id = 0x0000001D;
} // namespace TxDataPollCount

namespace TxBeaconCount {
static constexpr AttributeId Id = 0x0000001E;
} // namespace TxBeaconCount

namespace TxBeaconRequestCount {
static constexpr AttributeId Id = 0x0000001F;
} // namespace TxBeaconRequestCount

namespace TxOtherCount {
static constexpr AttributeId Id = 0x00000020;
} // namespace TxOtherCount

namespace TxRetryCount {
static constexpr AttributeId Id = 0x00000021;
} // namespace TxRetryCount

namespace TxDirectMaxRetryExpiryCount {
static constexpr AttributeId Id = 0x00000022;
} // namespace TxDirectMaxRetryExpiryCount

namespace TxIndirectMaxRetryExpiryCount {
static constexpr AttributeId Id = 0x00000023;
} // namespace TxIndirectMaxRetryExpiryCount

namespace TxErrCcaCount {
static constexpr AttributeId Id = 0x00000024;
} // namespace TxErrCcaCount

namespace TxErrAbortCount {
static constexpr AttributeId Id = 0x00000025;
} // namespace TxErrAbortCount

namespace TxErrBusyChannelCount {
static constexpr AttributeId Id = 0x00000026;
} // namespace TxErrBusyChannelCount

namespace RxTotalCount {
static constexpr AttributeId Id = 0x00000027;
} // namespace RxTotalCount

namespace RxUnicastCount {
static constexpr AttributeId Id = 0x00000028;
} // namespace RxUnicastCount

namespace RxBroadcastCount {
static constexpr AttributeId Id = 0x00000029;
} // namespace RxBroadcastCount

namespace RxDataCount {
static constexpr AttributeId Id = 0x0000002A;
} // namespace RxDataCount

namespace RxDataPollCount {
static constexpr AttributeId Id = 0x0000002B;
} // namespace RxDataPollCount

namespace RxBeaconCount {
static constexpr AttributeId Id = 0x0000002C;
} // namespace RxBeaconCount

namespace RxBeaconRequestCount {
static constexpr AttributeId Id = 0x0000002D;
} // namespace RxBeaconRequestCount

namespace RxOtherCount {
static constexpr AttributeId Id = 0x0000002E;
} // namespace RxOtherCount

namespace RxAddressFilteredCount {
static constexpr AttributeId Id = 0x0000002F;
} // namespace RxAddressFilteredCount

namespace RxDestAddrFilteredCount {
static constexpr AttributeId Id = 0x00000030;
} // namespace RxDestAddrFilteredCount

namespace RxDuplicatedCount {
static constexpr AttributeId Id = 0x00000031;
} // namespace RxDuplicatedCount

namespace RxErrNoFrameCount {
static constexpr AttributeId Id = 0x00000032;
} // namespace RxErrNoFrameCount

namespace RxErrUnknownNeighborCount {
static constexpr AttributeId Id = 0x00000033;
} // namespace RxErrUnknownNeighborCount

namespace RxErrInvalidSrcAddrCount {
static constexpr AttributeId Id = 0x00000034;
} // namespace RxErrInvalidSrcAddrCount

namespace RxErrSecCount {
static constexpr AttributeId Id = 0x00000035;
} // namespace RxErrSecCount

namespace RxErrFcsCount {
static constexpr AttributeId Id = 0x00000036;
} // namespace RxErrFcsCount

namespace RxErrOtherCount {
static constexpr AttributeId Id = 0x00000037;
} // namespace RxErrOtherCount

namespace ActiveTimestamp {
static constexpr AttributeId Id = 0x00000038;
} // namespace ActiveTimestamp

namespace PendingTimestamp {
static constexpr AttributeId Id = 0x00000039;
} // namespace PendingTimestamp

namespace Delay {
static constexpr AttributeId Id = 0x0000003A;
} // namespace Delay

namespace SecurityPolicy {
static constexpr AttributeId Id = 0x0000003B;
} // namespace SecurityPolicy

namespace ChannelPage0Mask {
static constexpr AttributeId Id = 0x0000003C;
} // namespace ChannelPage0Mask

namespace OperationalDatasetComponents {
static constexpr AttributeId Id = 0x0000003D;
} // namespace OperationalDatasetComponents

namespace ActiveNetworkFaultsList {
static constexpr AttributeId Id = 0x0000003E;
} // namespace ActiveNetworkFaultsList

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ThreadNetworkDiagnostics

namespace WiFiNetworkDiagnostics {
namespace Attributes {

namespace Bssid {
static constexpr AttributeId Id = 0x00000000;
} // namespace Bssid

namespace SecurityType {
static constexpr AttributeId Id = 0x00000001;
} // namespace SecurityType

namespace WiFiVersion {
static constexpr AttributeId Id = 0x00000002;
} // namespace WiFiVersion

namespace ChannelNumber {
static constexpr AttributeId Id = 0x00000003;
} // namespace ChannelNumber

namespace Rssi {
static constexpr AttributeId Id = 0x00000004;
} // namespace Rssi

namespace BeaconLostCount {
static constexpr AttributeId Id = 0x00000005;
} // namespace BeaconLostCount

namespace BeaconRxCount {
static constexpr AttributeId Id = 0x00000006;
} // namespace BeaconRxCount

namespace PacketMulticastRxCount {
static constexpr AttributeId Id = 0x00000007;
} // namespace PacketMulticastRxCount

namespace PacketMulticastTxCount {
static constexpr AttributeId Id = 0x00000008;
} // namespace PacketMulticastTxCount

namespace PacketUnicastRxCount {
static constexpr AttributeId Id = 0x00000009;
} // namespace PacketUnicastRxCount

namespace PacketUnicastTxCount {
static constexpr AttributeId Id = 0x0000000A;
} // namespace PacketUnicastTxCount

namespace CurrentMaxRate {
static constexpr AttributeId Id = 0x0000000B;
} // namespace CurrentMaxRate

namespace OverrunCount {
static constexpr AttributeId Id = 0x0000000C;
} // namespace OverrunCount

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace WiFiNetworkDiagnostics

namespace EthernetNetworkDiagnostics {
namespace Attributes {

namespace PHYRate {
static constexpr AttributeId Id = 0x00000000;
} // namespace PHYRate

namespace FullDuplex {
static constexpr AttributeId Id = 0x00000001;
} // namespace FullDuplex

namespace PacketRxCount {
static constexpr AttributeId Id = 0x00000002;
} // namespace PacketRxCount

namespace PacketTxCount {
static constexpr AttributeId Id = 0x00000003;
} // namespace PacketTxCount

namespace TxErrCount {
static constexpr AttributeId Id = 0x00000004;
} // namespace TxErrCount

namespace CollisionCount {
static constexpr AttributeId Id = 0x00000005;
} // namespace CollisionCount

namespace OverrunCount {
static constexpr AttributeId Id = 0x00000006;
} // namespace OverrunCount

namespace CarrierDetect {
static constexpr AttributeId Id = 0x00000007;
} // namespace CarrierDetect

namespace TimeSinceReset {
static constexpr AttributeId Id = 0x00000008;
} // namespace TimeSinceReset

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace EthernetNetworkDiagnostics

namespace TimeSynchronization {
namespace Attributes {

namespace UTCTime {
static constexpr AttributeId Id = 0x00000000;
} // namespace UTCTime

namespace Granularity {
static constexpr AttributeId Id = 0x00000001;
} // namespace Granularity

namespace TimeSource {
static constexpr AttributeId Id = 0x00000002;
} // namespace TimeSource

namespace TrustedTimeSource {
static constexpr AttributeId Id = 0x00000003;
} // namespace TrustedTimeSource

namespace DefaultNTP {
static constexpr AttributeId Id = 0x00000004;
} // namespace DefaultNTP

namespace TimeZone {
static constexpr AttributeId Id = 0x00000005;
} // namespace TimeZone

namespace DSTOffset {
static constexpr AttributeId Id = 0x00000006;
} // namespace DSTOffset

namespace LocalTime {
static constexpr AttributeId Id = 0x00000007;
} // namespace LocalTime

namespace TimeZoneDatabase {
static constexpr AttributeId Id = 0x00000008;
} // namespace TimeZoneDatabase

namespace NTPServerAvailable {
static constexpr AttributeId Id = 0x00000009;
} // namespace NTPServerAvailable

namespace TimeZoneListMaxSize {
static constexpr AttributeId Id = 0x0000000A;
} // namespace TimeZoneListMaxSize

namespace DSTOffsetListMaxSize {
static constexpr AttributeId Id = 0x0000000B;
} // namespace DSTOffsetListMaxSize

namespace SupportsDNSResolve {
static constexpr AttributeId Id = 0x0000000C;
} // namespace SupportsDNSResolve

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TimeSynchronization

namespace BridgedDeviceBasicInformation {
namespace Attributes {

namespace VendorName {
static constexpr AttributeId Id = 0x00000001;
} // namespace VendorName

namespace VendorID {
static constexpr AttributeId Id = 0x00000002;
} // namespace VendorID

namespace ProductName {
static constexpr AttributeId Id = 0x00000003;
} // namespace ProductName

namespace NodeLabel {
static constexpr AttributeId Id = 0x00000005;
} // namespace NodeLabel

namespace HardwareVersion {
static constexpr AttributeId Id = 0x00000007;
} // namespace HardwareVersion

namespace HardwareVersionString {
static constexpr AttributeId Id = 0x00000008;
} // namespace HardwareVersionString

namespace SoftwareVersion {
static constexpr AttributeId Id = 0x00000009;
} // namespace SoftwareVersion

namespace SoftwareVersionString {
static constexpr AttributeId Id = 0x0000000A;
} // namespace SoftwareVersionString

namespace ManufacturingDate {
static constexpr AttributeId Id = 0x0000000B;
} // namespace ManufacturingDate

namespace PartNumber {
static constexpr AttributeId Id = 0x0000000C;
} // namespace PartNumber

namespace ProductURL {
static constexpr AttributeId Id = 0x0000000D;
} // namespace ProductURL

namespace ProductLabel {
static constexpr AttributeId Id = 0x0000000E;
} // namespace ProductLabel

namespace SerialNumber {
static constexpr AttributeId Id = 0x0000000F;
} // namespace SerialNumber

namespace Reachable {
static constexpr AttributeId Id = 0x00000011;
} // namespace Reachable

namespace UniqueID {
static constexpr AttributeId Id = 0x00000012;
} // namespace UniqueID

namespace ProductAppearance {
static constexpr AttributeId Id = 0x00000014;
} // namespace ProductAppearance

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BridgedDeviceBasicInformation

namespace Switch {
namespace Attributes {

namespace NumberOfPositions {
static constexpr AttributeId Id = 0x00000000;
} // namespace NumberOfPositions

namespace CurrentPosition {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentPosition

namespace MultiPressMax {
static constexpr AttributeId Id = 0x00000002;
} // namespace MultiPressMax

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Switch

namespace AdministratorCommissioning {
namespace Attributes {

namespace WindowStatus {
static constexpr AttributeId Id = 0x00000000;
} // namespace WindowStatus

namespace AdminFabricIndex {
static constexpr AttributeId Id = 0x00000001;
} // namespace AdminFabricIndex

namespace AdminVendorId {
static constexpr AttributeId Id = 0x00000002;
} // namespace AdminVendorId

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace AdministratorCommissioning

namespace OperationalCredentials {
namespace Attributes {

namespace NOCs {
static constexpr AttributeId Id = 0x00000000;
} // namespace NOCs

namespace Fabrics {
static constexpr AttributeId Id = 0x00000001;
} // namespace Fabrics

namespace SupportedFabrics {
static constexpr AttributeId Id = 0x00000002;
} // namespace SupportedFabrics

namespace CommissionedFabrics {
static constexpr AttributeId Id = 0x00000003;
} // namespace CommissionedFabrics

namespace TrustedRootCertificates {
static constexpr AttributeId Id = 0x00000004;
} // namespace TrustedRootCertificates

namespace CurrentFabricIndex {
static constexpr AttributeId Id = 0x00000005;
} // namespace CurrentFabricIndex

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OperationalCredentials

namespace GroupKeyManagement {
namespace Attributes {

namespace GroupKeyMap {
static constexpr AttributeId Id = 0x00000000;
} // namespace GroupKeyMap

namespace GroupTable {
static constexpr AttributeId Id = 0x00000001;
} // namespace GroupTable

namespace MaxGroupsPerFabric {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxGroupsPerFabric

namespace MaxGroupKeysPerFabric {
static constexpr AttributeId Id = 0x00000003;
} // namespace MaxGroupKeysPerFabric

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace GroupKeyManagement

namespace FixedLabel {
namespace Attributes {

namespace LabelList {
static constexpr AttributeId Id = 0x00000000;
} // namespace LabelList

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FixedLabel

namespace UserLabel {
namespace Attributes {

namespace LabelList {
static constexpr AttributeId Id = 0x00000000;
} // namespace LabelList

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace UserLabel

namespace ProxyConfiguration {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ProxyConfiguration

namespace ProxyDiscovery {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ProxyDiscovery

namespace ProxyValid {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ProxyValid

namespace BooleanState {
namespace Attributes {

namespace StateValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace StateValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BooleanState

namespace IcdManagement {
namespace Attributes {

namespace IdleModeInterval {
static constexpr AttributeId Id = 0x00000000;
} // namespace IdleModeInterval

namespace ActiveModeInterval {
static constexpr AttributeId Id = 0x00000001;
} // namespace ActiveModeInterval

namespace ActiveModeThreshold {
static constexpr AttributeId Id = 0x00000002;
} // namespace ActiveModeThreshold

namespace RegisteredClients {
static constexpr AttributeId Id = 0x00000003;
} // namespace RegisteredClients

namespace ICDCounter {
static constexpr AttributeId Id = 0x00000004;
} // namespace ICDCounter

namespace ClientsSupportedPerFabric {
static constexpr AttributeId Id = 0x00000005;
} // namespace ClientsSupportedPerFabric

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace IcdManagement

namespace ModeSelect {
namespace Attributes {

namespace Description {
static constexpr AttributeId Id = 0x00000000;
} // namespace Description

namespace StandardNamespace {
static constexpr AttributeId Id = 0x00000001;
} // namespace StandardNamespace

namespace SupportedModes {
static constexpr AttributeId Id = 0x00000002;
} // namespace SupportedModes

namespace CurrentMode {
static constexpr AttributeId Id = 0x00000003;
} // namespace CurrentMode

namespace StartUpMode {
static constexpr AttributeId Id = 0x00000004;
} // namespace StartUpMode

namespace OnMode {
static constexpr AttributeId Id = 0x00000005;
} // namespace OnMode

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ModeSelect

namespace TemperatureControl {
namespace Attributes {

namespace TemperatureSetpoint {
static constexpr AttributeId Id = 0x00000000;
} // namespace TemperatureSetpoint

namespace MinTemperature {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinTemperature

namespace MaxTemperature {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxTemperature

namespace Step {
static constexpr AttributeId Id = 0x00000003;
} // namespace Step

namespace CurrentTemperatureLevelIndex {
static constexpr AttributeId Id = 0x00000004;
} // namespace CurrentTemperatureLevelIndex

namespace SupportedTemperatureLevels {
static constexpr AttributeId Id = 0x00000005;
} // namespace SupportedTemperatureLevels

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TemperatureControl

namespace RefrigeratorAlarm {
namespace Attributes {

namespace Mask {
static constexpr AttributeId Id = 0x00000000;
} // namespace Mask

namespace Latch {
static constexpr AttributeId Id = 0x00000001;
} // namespace Latch

namespace State {
static constexpr AttributeId Id = 0x00000002;
} // namespace State

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace RefrigeratorAlarm

namespace AirQuality {
namespace Attributes {

namespace AirQuality {
static constexpr AttributeId Id = 0x00000000;
} // namespace AirQuality

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace AirQuality

namespace SmokeCoAlarm {
namespace Attributes {

namespace ExpressedState {
static constexpr AttributeId Id = 0x00000000;
} // namespace ExpressedState

namespace SmokeState {
static constexpr AttributeId Id = 0x00000001;
} // namespace SmokeState

namespace COState {
static constexpr AttributeId Id = 0x00000002;
} // namespace COState

namespace BatteryAlert {
static constexpr AttributeId Id = 0x00000003;
} // namespace BatteryAlert

namespace DeviceMuted {
static constexpr AttributeId Id = 0x00000004;
} // namespace DeviceMuted

namespace TestInProgress {
static constexpr AttributeId Id = 0x00000005;
} // namespace TestInProgress

namespace HardwareFaultAlert {
static constexpr AttributeId Id = 0x00000006;
} // namespace HardwareFaultAlert

namespace EndOfServiceAlert {
static constexpr AttributeId Id = 0x00000007;
} // namespace EndOfServiceAlert

namespace InterconnectSmokeAlarm {
static constexpr AttributeId Id = 0x00000008;
} // namespace InterconnectSmokeAlarm

namespace InterconnectCOAlarm {
static constexpr AttributeId Id = 0x00000009;
} // namespace InterconnectCOAlarm

namespace ContaminationState {
static constexpr AttributeId Id = 0x0000000A;
} // namespace ContaminationState

namespace SensitivityLevel {
static constexpr AttributeId Id = 0x0000000B;
} // namespace SensitivityLevel

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace SmokeCoAlarm

namespace HepaFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace HepaFilterMonitoring

namespace ActivatedCarbonFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ActivatedCarbonFilterMonitoring

namespace CeramicFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace CeramicFilterMonitoring

namespace ElectrostaticFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ElectrostaticFilterMonitoring

namespace UvFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace UvFilterMonitoring

namespace IonizingFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace IonizingFilterMonitoring

namespace ZeoliteFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ZeoliteFilterMonitoring

namespace OzoneFilterMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OzoneFilterMonitoring

namespace WaterTankMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace WaterTankMonitoring

namespace FuelTankMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FuelTankMonitoring

namespace InkCartridgeMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace InkCartridgeMonitoring

namespace TonerCartridgeMonitoring {
namespace Attributes {

namespace Condition {
static constexpr AttributeId Id = 0x00000000;
} // namespace Condition

namespace DegradationDirection {
static constexpr AttributeId Id = 0x00000001;
} // namespace DegradationDirection

namespace ChangeIndication {
static constexpr AttributeId Id = 0x00000002;
} // namespace ChangeIndication

namespace InPlaceIndicator {
static constexpr AttributeId Id = 0x00000003;
} // namespace InPlaceIndicator

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TonerCartridgeMonitoring

namespace DoorLock {
namespace Attributes {

namespace LockState {
static constexpr AttributeId Id = 0x00000000;
} // namespace LockState

namespace LockType {
static constexpr AttributeId Id = 0x00000001;
} // namespace LockType

namespace ActuatorEnabled {
static constexpr AttributeId Id = 0x00000002;
} // namespace ActuatorEnabled

namespace DoorState {
static constexpr AttributeId Id = 0x00000003;
} // namespace DoorState

namespace DoorOpenEvents {
static constexpr AttributeId Id = 0x00000004;
} // namespace DoorOpenEvents

namespace DoorClosedEvents {
static constexpr AttributeId Id = 0x00000005;
} // namespace DoorClosedEvents

namespace OpenPeriod {
static constexpr AttributeId Id = 0x00000006;
} // namespace OpenPeriod

namespace NumberOfTotalUsersSupported {
static constexpr AttributeId Id = 0x00000011;
} // namespace NumberOfTotalUsersSupported

namespace NumberOfPINUsersSupported {
static constexpr AttributeId Id = 0x00000012;
} // namespace NumberOfPINUsersSupported

namespace NumberOfRFIDUsersSupported {
static constexpr AttributeId Id = 0x00000013;
} // namespace NumberOfRFIDUsersSupported

namespace NumberOfWeekDaySchedulesSupportedPerUser {
static constexpr AttributeId Id = 0x00000014;
} // namespace NumberOfWeekDaySchedulesSupportedPerUser

namespace NumberOfYearDaySchedulesSupportedPerUser {
static constexpr AttributeId Id = 0x00000015;
} // namespace NumberOfYearDaySchedulesSupportedPerUser

namespace NumberOfHolidaySchedulesSupported {
static constexpr AttributeId Id = 0x00000016;
} // namespace NumberOfHolidaySchedulesSupported

namespace MaxPINCodeLength {
static constexpr AttributeId Id = 0x00000017;
} // namespace MaxPINCodeLength

namespace MinPINCodeLength {
static constexpr AttributeId Id = 0x00000018;
} // namespace MinPINCodeLength

namespace MaxRFIDCodeLength {
static constexpr AttributeId Id = 0x00000019;
} // namespace MaxRFIDCodeLength

namespace MinRFIDCodeLength {
static constexpr AttributeId Id = 0x0000001A;
} // namespace MinRFIDCodeLength

namespace CredentialRulesSupport {
static constexpr AttributeId Id = 0x0000001B;
} // namespace CredentialRulesSupport

namespace NumberOfCredentialsSupportedPerUser {
static constexpr AttributeId Id = 0x0000001C;
} // namespace NumberOfCredentialsSupportedPerUser

namespace Language {
static constexpr AttributeId Id = 0x00000021;
} // namespace Language

namespace LEDSettings {
static constexpr AttributeId Id = 0x00000022;
} // namespace LEDSettings

namespace AutoRelockTime {
static constexpr AttributeId Id = 0x00000023;
} // namespace AutoRelockTime

namespace SoundVolume {
static constexpr AttributeId Id = 0x00000024;
} // namespace SoundVolume

namespace OperatingMode {
static constexpr AttributeId Id = 0x00000025;
} // namespace OperatingMode

namespace SupportedOperatingModes {
static constexpr AttributeId Id = 0x00000026;
} // namespace SupportedOperatingModes

namespace DefaultConfigurationRegister {
static constexpr AttributeId Id = 0x00000027;
} // namespace DefaultConfigurationRegister

namespace EnableLocalProgramming {
static constexpr AttributeId Id = 0x00000028;
} // namespace EnableLocalProgramming

namespace EnableOneTouchLocking {
static constexpr AttributeId Id = 0x00000029;
} // namespace EnableOneTouchLocking

namespace EnableInsideStatusLED {
static constexpr AttributeId Id = 0x0000002A;
} // namespace EnableInsideStatusLED

namespace EnablePrivacyModeButton {
static constexpr AttributeId Id = 0x0000002B;
} // namespace EnablePrivacyModeButton

namespace LocalProgrammingFeatures {
static constexpr AttributeId Id = 0x0000002C;
} // namespace LocalProgrammingFeatures

namespace WrongCodeEntryLimit {
static constexpr AttributeId Id = 0x00000030;
} // namespace WrongCodeEntryLimit

namespace UserCodeTemporaryDisableTime {
static constexpr AttributeId Id = 0x00000031;
} // namespace UserCodeTemporaryDisableTime

namespace SendPINOverTheAir {
static constexpr AttributeId Id = 0x00000032;
} // namespace SendPINOverTheAir

namespace RequirePINforRemoteOperation {
static constexpr AttributeId Id = 0x00000033;
} // namespace RequirePINforRemoteOperation

namespace ExpiringUserTimeout {
static constexpr AttributeId Id = 0x00000035;
} // namespace ExpiringUserTimeout

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace DoorLock

namespace WindowCovering {
namespace Attributes {

namespace Type {
static constexpr AttributeId Id = 0x00000000;
} // namespace Type

namespace PhysicalClosedLimitLift {
static constexpr AttributeId Id = 0x00000001;
} // namespace PhysicalClosedLimitLift

namespace PhysicalClosedLimitTilt {
static constexpr AttributeId Id = 0x00000002;
} // namespace PhysicalClosedLimitTilt

namespace CurrentPositionLift {
static constexpr AttributeId Id = 0x00000003;
} // namespace CurrentPositionLift

namespace CurrentPositionTilt {
static constexpr AttributeId Id = 0x00000004;
} // namespace CurrentPositionTilt

namespace NumberOfActuationsLift {
static constexpr AttributeId Id = 0x00000005;
} // namespace NumberOfActuationsLift

namespace NumberOfActuationsTilt {
static constexpr AttributeId Id = 0x00000006;
} // namespace NumberOfActuationsTilt

namespace ConfigStatus {
static constexpr AttributeId Id = 0x00000007;
} // namespace ConfigStatus

namespace CurrentPositionLiftPercentage {
static constexpr AttributeId Id = 0x00000008;
} // namespace CurrentPositionLiftPercentage

namespace CurrentPositionTiltPercentage {
static constexpr AttributeId Id = 0x00000009;
} // namespace CurrentPositionTiltPercentage

namespace OperationalStatus {
static constexpr AttributeId Id = 0x0000000A;
} // namespace OperationalStatus

namespace TargetPositionLiftPercent100ths {
static constexpr AttributeId Id = 0x0000000B;
} // namespace TargetPositionLiftPercent100ths

namespace TargetPositionTiltPercent100ths {
static constexpr AttributeId Id = 0x0000000C;
} // namespace TargetPositionTiltPercent100ths

namespace EndProductType {
static constexpr AttributeId Id = 0x0000000D;
} // namespace EndProductType

namespace CurrentPositionLiftPercent100ths {
static constexpr AttributeId Id = 0x0000000E;
} // namespace CurrentPositionLiftPercent100ths

namespace CurrentPositionTiltPercent100ths {
static constexpr AttributeId Id = 0x0000000F;
} // namespace CurrentPositionTiltPercent100ths

namespace InstalledOpenLimitLift {
static constexpr AttributeId Id = 0x00000010;
} // namespace InstalledOpenLimitLift

namespace InstalledClosedLimitLift {
static constexpr AttributeId Id = 0x00000011;
} // namespace InstalledClosedLimitLift

namespace InstalledOpenLimitTilt {
static constexpr AttributeId Id = 0x00000012;
} // namespace InstalledOpenLimitTilt

namespace InstalledClosedLimitTilt {
static constexpr AttributeId Id = 0x00000013;
} // namespace InstalledClosedLimitTilt

namespace Mode {
static constexpr AttributeId Id = 0x00000017;
} // namespace Mode

namespace SafetyStatus {
static constexpr AttributeId Id = 0x0000001A;
} // namespace SafetyStatus

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace WindowCovering

namespace BarrierControl {
namespace Attributes {

namespace BarrierMovingState {
static constexpr AttributeId Id = 0x00000001;
} // namespace BarrierMovingState

namespace BarrierSafetyStatus {
static constexpr AttributeId Id = 0x00000002;
} // namespace BarrierSafetyStatus

namespace BarrierCapabilities {
static constexpr AttributeId Id = 0x00000003;
} // namespace BarrierCapabilities

namespace BarrierOpenEvents {
static constexpr AttributeId Id = 0x00000004;
} // namespace BarrierOpenEvents

namespace BarrierCloseEvents {
static constexpr AttributeId Id = 0x00000005;
} // namespace BarrierCloseEvents

namespace BarrierCommandOpenEvents {
static constexpr AttributeId Id = 0x00000006;
} // namespace BarrierCommandOpenEvents

namespace BarrierCommandCloseEvents {
static constexpr AttributeId Id = 0x00000007;
} // namespace BarrierCommandCloseEvents

namespace BarrierOpenPeriod {
static constexpr AttributeId Id = 0x00000008;
} // namespace BarrierOpenPeriod

namespace BarrierClosePeriod {
static constexpr AttributeId Id = 0x00000009;
} // namespace BarrierClosePeriod

namespace BarrierPosition {
static constexpr AttributeId Id = 0x0000000A;
} // namespace BarrierPosition

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BarrierControl

namespace PumpConfigurationAndControl {
namespace Attributes {

namespace MaxPressure {
static constexpr AttributeId Id = 0x00000000;
} // namespace MaxPressure

namespace MaxSpeed {
static constexpr AttributeId Id = 0x00000001;
} // namespace MaxSpeed

namespace MaxFlow {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxFlow

namespace MinConstPressure {
static constexpr AttributeId Id = 0x00000003;
} // namespace MinConstPressure

namespace MaxConstPressure {
static constexpr AttributeId Id = 0x00000004;
} // namespace MaxConstPressure

namespace MinCompPressure {
static constexpr AttributeId Id = 0x00000005;
} // namespace MinCompPressure

namespace MaxCompPressure {
static constexpr AttributeId Id = 0x00000006;
} // namespace MaxCompPressure

namespace MinConstSpeed {
static constexpr AttributeId Id = 0x00000007;
} // namespace MinConstSpeed

namespace MaxConstSpeed {
static constexpr AttributeId Id = 0x00000008;
} // namespace MaxConstSpeed

namespace MinConstFlow {
static constexpr AttributeId Id = 0x00000009;
} // namespace MinConstFlow

namespace MaxConstFlow {
static constexpr AttributeId Id = 0x0000000A;
} // namespace MaxConstFlow

namespace MinConstTemp {
static constexpr AttributeId Id = 0x0000000B;
} // namespace MinConstTemp

namespace MaxConstTemp {
static constexpr AttributeId Id = 0x0000000C;
} // namespace MaxConstTemp

namespace PumpStatus {
static constexpr AttributeId Id = 0x00000010;
} // namespace PumpStatus

namespace EffectiveOperationMode {
static constexpr AttributeId Id = 0x00000011;
} // namespace EffectiveOperationMode

namespace EffectiveControlMode {
static constexpr AttributeId Id = 0x00000012;
} // namespace EffectiveControlMode

namespace Capacity {
static constexpr AttributeId Id = 0x00000013;
} // namespace Capacity

namespace Speed {
static constexpr AttributeId Id = 0x00000014;
} // namespace Speed

namespace LifetimeRunningHours {
static constexpr AttributeId Id = 0x00000015;
} // namespace LifetimeRunningHours

namespace Power {
static constexpr AttributeId Id = 0x00000016;
} // namespace Power

namespace LifetimeEnergyConsumed {
static constexpr AttributeId Id = 0x00000017;
} // namespace LifetimeEnergyConsumed

namespace OperationMode {
static constexpr AttributeId Id = 0x00000020;
} // namespace OperationMode

namespace ControlMode {
static constexpr AttributeId Id = 0x00000021;
} // namespace ControlMode

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace PumpConfigurationAndControl

namespace Thermostat {
namespace Attributes {

namespace LocalTemperature {
static constexpr AttributeId Id = 0x00000000;
} // namespace LocalTemperature

namespace OutdoorTemperature {
static constexpr AttributeId Id = 0x00000001;
} // namespace OutdoorTemperature

namespace Occupancy {
static constexpr AttributeId Id = 0x00000002;
} // namespace Occupancy

namespace AbsMinHeatSetpointLimit {
static constexpr AttributeId Id = 0x00000003;
} // namespace AbsMinHeatSetpointLimit

namespace AbsMaxHeatSetpointLimit {
static constexpr AttributeId Id = 0x00000004;
} // namespace AbsMaxHeatSetpointLimit

namespace AbsMinCoolSetpointLimit {
static constexpr AttributeId Id = 0x00000005;
} // namespace AbsMinCoolSetpointLimit

namespace AbsMaxCoolSetpointLimit {
static constexpr AttributeId Id = 0x00000006;
} // namespace AbsMaxCoolSetpointLimit

namespace PICoolingDemand {
static constexpr AttributeId Id = 0x00000007;
} // namespace PICoolingDemand

namespace PIHeatingDemand {
static constexpr AttributeId Id = 0x00000008;
} // namespace PIHeatingDemand

namespace HVACSystemTypeConfiguration {
static constexpr AttributeId Id = 0x00000009;
} // namespace HVACSystemTypeConfiguration

namespace LocalTemperatureCalibration {
static constexpr AttributeId Id = 0x00000010;
} // namespace LocalTemperatureCalibration

namespace OccupiedCoolingSetpoint {
static constexpr AttributeId Id = 0x00000011;
} // namespace OccupiedCoolingSetpoint

namespace OccupiedHeatingSetpoint {
static constexpr AttributeId Id = 0x00000012;
} // namespace OccupiedHeatingSetpoint

namespace UnoccupiedCoolingSetpoint {
static constexpr AttributeId Id = 0x00000013;
} // namespace UnoccupiedCoolingSetpoint

namespace UnoccupiedHeatingSetpoint {
static constexpr AttributeId Id = 0x00000014;
} // namespace UnoccupiedHeatingSetpoint

namespace MinHeatSetpointLimit {
static constexpr AttributeId Id = 0x00000015;
} // namespace MinHeatSetpointLimit

namespace MaxHeatSetpointLimit {
static constexpr AttributeId Id = 0x00000016;
} // namespace MaxHeatSetpointLimit

namespace MinCoolSetpointLimit {
static constexpr AttributeId Id = 0x00000017;
} // namespace MinCoolSetpointLimit

namespace MaxCoolSetpointLimit {
static constexpr AttributeId Id = 0x00000018;
} // namespace MaxCoolSetpointLimit

namespace MinSetpointDeadBand {
static constexpr AttributeId Id = 0x00000019;
} // namespace MinSetpointDeadBand

namespace RemoteSensing {
static constexpr AttributeId Id = 0x0000001A;
} // namespace RemoteSensing

namespace ControlSequenceOfOperation {
static constexpr AttributeId Id = 0x0000001B;
} // namespace ControlSequenceOfOperation

namespace SystemMode {
static constexpr AttributeId Id = 0x0000001C;
} // namespace SystemMode

namespace ThermostatRunningMode {
static constexpr AttributeId Id = 0x0000001E;
} // namespace ThermostatRunningMode

namespace StartOfWeek {
static constexpr AttributeId Id = 0x00000020;
} // namespace StartOfWeek

namespace NumberOfWeeklyTransitions {
static constexpr AttributeId Id = 0x00000021;
} // namespace NumberOfWeeklyTransitions

namespace NumberOfDailyTransitions {
static constexpr AttributeId Id = 0x00000022;
} // namespace NumberOfDailyTransitions

namespace TemperatureSetpointHold {
static constexpr AttributeId Id = 0x00000023;
} // namespace TemperatureSetpointHold

namespace TemperatureSetpointHoldDuration {
static constexpr AttributeId Id = 0x00000024;
} // namespace TemperatureSetpointHoldDuration

namespace ThermostatProgrammingOperationMode {
static constexpr AttributeId Id = 0x00000025;
} // namespace ThermostatProgrammingOperationMode

namespace ThermostatRunningState {
static constexpr AttributeId Id = 0x00000029;
} // namespace ThermostatRunningState

namespace SetpointChangeSource {
static constexpr AttributeId Id = 0x00000030;
} // namespace SetpointChangeSource

namespace SetpointChangeAmount {
static constexpr AttributeId Id = 0x00000031;
} // namespace SetpointChangeAmount

namespace SetpointChangeSourceTimestamp {
static constexpr AttributeId Id = 0x00000032;
} // namespace SetpointChangeSourceTimestamp

namespace OccupiedSetback {
static constexpr AttributeId Id = 0x00000034;
} // namespace OccupiedSetback

namespace OccupiedSetbackMin {
static constexpr AttributeId Id = 0x00000035;
} // namespace OccupiedSetbackMin

namespace OccupiedSetbackMax {
static constexpr AttributeId Id = 0x00000036;
} // namespace OccupiedSetbackMax

namespace UnoccupiedSetback {
static constexpr AttributeId Id = 0x00000037;
} // namespace UnoccupiedSetback

namespace UnoccupiedSetbackMin {
static constexpr AttributeId Id = 0x00000038;
} // namespace UnoccupiedSetbackMin

namespace UnoccupiedSetbackMax {
static constexpr AttributeId Id = 0x00000039;
} // namespace UnoccupiedSetbackMax

namespace EmergencyHeatDelta {
static constexpr AttributeId Id = 0x0000003A;
} // namespace EmergencyHeatDelta

namespace ACType {
static constexpr AttributeId Id = 0x00000040;
} // namespace ACType

namespace ACCapacity {
static constexpr AttributeId Id = 0x00000041;
} // namespace ACCapacity

namespace ACRefrigerantType {
static constexpr AttributeId Id = 0x00000042;
} // namespace ACRefrigerantType

namespace ACCompressorType {
static constexpr AttributeId Id = 0x00000043;
} // namespace ACCompressorType

namespace ACErrorCode {
static constexpr AttributeId Id = 0x00000044;
} // namespace ACErrorCode

namespace ACLouverPosition {
static constexpr AttributeId Id = 0x00000045;
} // namespace ACLouverPosition

namespace ACCoilTemperature {
static constexpr AttributeId Id = 0x00000046;
} // namespace ACCoilTemperature

namespace ACCapacityformat {
static constexpr AttributeId Id = 0x00000047;
} // namespace ACCapacityformat

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Thermostat

namespace FanControl {
namespace Attributes {

namespace FanMode {
static constexpr AttributeId Id = 0x00000000;
} // namespace FanMode

namespace FanModeSequence {
static constexpr AttributeId Id = 0x00000001;
} // namespace FanModeSequence

namespace PercentSetting {
static constexpr AttributeId Id = 0x00000002;
} // namespace PercentSetting

namespace PercentCurrent {
static constexpr AttributeId Id = 0x00000003;
} // namespace PercentCurrent

namespace SpeedMax {
static constexpr AttributeId Id = 0x00000004;
} // namespace SpeedMax

namespace SpeedSetting {
static constexpr AttributeId Id = 0x00000005;
} // namespace SpeedSetting

namespace SpeedCurrent {
static constexpr AttributeId Id = 0x00000006;
} // namespace SpeedCurrent

namespace RockSupport {
static constexpr AttributeId Id = 0x00000007;
} // namespace RockSupport

namespace RockSetting {
static constexpr AttributeId Id = 0x00000008;
} // namespace RockSetting

namespace WindSupport {
static constexpr AttributeId Id = 0x00000009;
} // namespace WindSupport

namespace WindSetting {
static constexpr AttributeId Id = 0x0000000A;
} // namespace WindSetting

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FanControl

namespace ThermostatUserInterfaceConfiguration {
namespace Attributes {

namespace TemperatureDisplayMode {
static constexpr AttributeId Id = 0x00000000;
} // namespace TemperatureDisplayMode

namespace KeypadLockout {
static constexpr AttributeId Id = 0x00000001;
} // namespace KeypadLockout

namespace ScheduleProgrammingVisibility {
static constexpr AttributeId Id = 0x00000002;
} // namespace ScheduleProgrammingVisibility

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ThermostatUserInterfaceConfiguration

namespace ColorControl {
namespace Attributes {

namespace CurrentHue {
static constexpr AttributeId Id = 0x00000000;
} // namespace CurrentHue

namespace CurrentSaturation {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentSaturation

namespace RemainingTime {
static constexpr AttributeId Id = 0x00000002;
} // namespace RemainingTime

namespace CurrentX {
static constexpr AttributeId Id = 0x00000003;
} // namespace CurrentX

namespace CurrentY {
static constexpr AttributeId Id = 0x00000004;
} // namespace CurrentY

namespace DriftCompensation {
static constexpr AttributeId Id = 0x00000005;
} // namespace DriftCompensation

namespace CompensationText {
static constexpr AttributeId Id = 0x00000006;
} // namespace CompensationText

namespace ColorTemperatureMireds {
static constexpr AttributeId Id = 0x00000007;
} // namespace ColorTemperatureMireds

namespace ColorMode {
static constexpr AttributeId Id = 0x00000008;
} // namespace ColorMode

namespace Options {
static constexpr AttributeId Id = 0x0000000F;
} // namespace Options

namespace NumberOfPrimaries {
static constexpr AttributeId Id = 0x00000010;
} // namespace NumberOfPrimaries

namespace Primary1X {
static constexpr AttributeId Id = 0x00000011;
} // namespace Primary1X

namespace Primary1Y {
static constexpr AttributeId Id = 0x00000012;
} // namespace Primary1Y

namespace Primary1Intensity {
static constexpr AttributeId Id = 0x00000013;
} // namespace Primary1Intensity

namespace Primary2X {
static constexpr AttributeId Id = 0x00000015;
} // namespace Primary2X

namespace Primary2Y {
static constexpr AttributeId Id = 0x00000016;
} // namespace Primary2Y

namespace Primary2Intensity {
static constexpr AttributeId Id = 0x00000017;
} // namespace Primary2Intensity

namespace Primary3X {
static constexpr AttributeId Id = 0x00000019;
} // namespace Primary3X

namespace Primary3Y {
static constexpr AttributeId Id = 0x0000001A;
} // namespace Primary3Y

namespace Primary3Intensity {
static constexpr AttributeId Id = 0x0000001B;
} // namespace Primary3Intensity

namespace Primary4X {
static constexpr AttributeId Id = 0x00000020;
} // namespace Primary4X

namespace Primary4Y {
static constexpr AttributeId Id = 0x00000021;
} // namespace Primary4Y

namespace Primary4Intensity {
static constexpr AttributeId Id = 0x00000022;
} // namespace Primary4Intensity

namespace Primary5X {
static constexpr AttributeId Id = 0x00000024;
} // namespace Primary5X

namespace Primary5Y {
static constexpr AttributeId Id = 0x00000025;
} // namespace Primary5Y

namespace Primary5Intensity {
static constexpr AttributeId Id = 0x00000026;
} // namespace Primary5Intensity

namespace Primary6X {
static constexpr AttributeId Id = 0x00000028;
} // namespace Primary6X

namespace Primary6Y {
static constexpr AttributeId Id = 0x00000029;
} // namespace Primary6Y

namespace Primary6Intensity {
static constexpr AttributeId Id = 0x0000002A;
} // namespace Primary6Intensity

namespace WhitePointX {
static constexpr AttributeId Id = 0x00000030;
} // namespace WhitePointX

namespace WhitePointY {
static constexpr AttributeId Id = 0x00000031;
} // namespace WhitePointY

namespace ColorPointRX {
static constexpr AttributeId Id = 0x00000032;
} // namespace ColorPointRX

namespace ColorPointRY {
static constexpr AttributeId Id = 0x00000033;
} // namespace ColorPointRY

namespace ColorPointRIntensity {
static constexpr AttributeId Id = 0x00000034;
} // namespace ColorPointRIntensity

namespace ColorPointGX {
static constexpr AttributeId Id = 0x00000036;
} // namespace ColorPointGX

namespace ColorPointGY {
static constexpr AttributeId Id = 0x00000037;
} // namespace ColorPointGY

namespace ColorPointGIntensity {
static constexpr AttributeId Id = 0x00000038;
} // namespace ColorPointGIntensity

namespace ColorPointBX {
static constexpr AttributeId Id = 0x0000003A;
} // namespace ColorPointBX

namespace ColorPointBY {
static constexpr AttributeId Id = 0x0000003B;
} // namespace ColorPointBY

namespace ColorPointBIntensity {
static constexpr AttributeId Id = 0x0000003C;
} // namespace ColorPointBIntensity

namespace EnhancedCurrentHue {
static constexpr AttributeId Id = 0x00004000;
} // namespace EnhancedCurrentHue

namespace EnhancedColorMode {
static constexpr AttributeId Id = 0x00004001;
} // namespace EnhancedColorMode

namespace ColorLoopActive {
static constexpr AttributeId Id = 0x00004002;
} // namespace ColorLoopActive

namespace ColorLoopDirection {
static constexpr AttributeId Id = 0x00004003;
} // namespace ColorLoopDirection

namespace ColorLoopTime {
static constexpr AttributeId Id = 0x00004004;
} // namespace ColorLoopTime

namespace ColorLoopStartEnhancedHue {
static constexpr AttributeId Id = 0x00004005;
} // namespace ColorLoopStartEnhancedHue

namespace ColorLoopStoredEnhancedHue {
static constexpr AttributeId Id = 0x00004006;
} // namespace ColorLoopStoredEnhancedHue

namespace ColorCapabilities {
static constexpr AttributeId Id = 0x0000400A;
} // namespace ColorCapabilities

namespace ColorTempPhysicalMinMireds {
static constexpr AttributeId Id = 0x0000400B;
} // namespace ColorTempPhysicalMinMireds

namespace ColorTempPhysicalMaxMireds {
static constexpr AttributeId Id = 0x0000400C;
} // namespace ColorTempPhysicalMaxMireds

namespace CoupleColorTempToLevelMinMireds {
static constexpr AttributeId Id = 0x0000400D;
} // namespace CoupleColorTempToLevelMinMireds

namespace StartUpColorTemperatureMireds {
static constexpr AttributeId Id = 0x00004010;
} // namespace StartUpColorTemperatureMireds

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ColorControl

namespace BallastConfiguration {
namespace Attributes {

namespace PhysicalMinLevel {
static constexpr AttributeId Id = 0x00000000;
} // namespace PhysicalMinLevel

namespace PhysicalMaxLevel {
static constexpr AttributeId Id = 0x00000001;
} // namespace PhysicalMaxLevel

namespace BallastStatus {
static constexpr AttributeId Id = 0x00000002;
} // namespace BallastStatus

namespace MinLevel {
static constexpr AttributeId Id = 0x00000010;
} // namespace MinLevel

namespace MaxLevel {
static constexpr AttributeId Id = 0x00000011;
} // namespace MaxLevel

namespace IntrinsicBallastFactor {
static constexpr AttributeId Id = 0x00000014;
} // namespace IntrinsicBallastFactor

namespace BallastFactorAdjustment {
static constexpr AttributeId Id = 0x00000015;
} // namespace BallastFactorAdjustment

namespace LampQuantity {
static constexpr AttributeId Id = 0x00000020;
} // namespace LampQuantity

namespace LampType {
static constexpr AttributeId Id = 0x00000030;
} // namespace LampType

namespace LampManufacturer {
static constexpr AttributeId Id = 0x00000031;
} // namespace LampManufacturer

namespace LampRatedHours {
static constexpr AttributeId Id = 0x00000032;
} // namespace LampRatedHours

namespace LampBurnHours {
static constexpr AttributeId Id = 0x00000033;
} // namespace LampBurnHours

namespace LampAlarmMode {
static constexpr AttributeId Id = 0x00000034;
} // namespace LampAlarmMode

namespace LampBurnHoursTripPoint {
static constexpr AttributeId Id = 0x00000035;
} // namespace LampBurnHoursTripPoint

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BallastConfiguration

namespace IlluminanceMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace Tolerance {
static constexpr AttributeId Id = 0x00000003;
} // namespace Tolerance

namespace LightSensorType {
static constexpr AttributeId Id = 0x00000004;
} // namespace LightSensorType

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace IlluminanceMeasurement

namespace TemperatureMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace Tolerance {
static constexpr AttributeId Id = 0x00000003;
} // namespace Tolerance

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TemperatureMeasurement

namespace PressureMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace Tolerance {
static constexpr AttributeId Id = 0x00000003;
} // namespace Tolerance

namespace ScaledValue {
static constexpr AttributeId Id = 0x00000010;
} // namespace ScaledValue

namespace MinScaledValue {
static constexpr AttributeId Id = 0x00000011;
} // namespace MinScaledValue

namespace MaxScaledValue {
static constexpr AttributeId Id = 0x00000012;
} // namespace MaxScaledValue

namespace ScaledTolerance {
static constexpr AttributeId Id = 0x00000013;
} // namespace ScaledTolerance

namespace Scale {
static constexpr AttributeId Id = 0x00000014;
} // namespace Scale

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace PressureMeasurement

namespace FlowMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace Tolerance {
static constexpr AttributeId Id = 0x00000003;
} // namespace Tolerance

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FlowMeasurement

namespace RelativeHumidityMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace Tolerance {
static constexpr AttributeId Id = 0x00000003;
} // namespace Tolerance

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace RelativeHumidityMeasurement

namespace OccupancySensing {
namespace Attributes {

namespace Occupancy {
static constexpr AttributeId Id = 0x00000000;
} // namespace Occupancy

namespace OccupancySensorType {
static constexpr AttributeId Id = 0x00000001;
} // namespace OccupancySensorType

namespace OccupancySensorTypeBitmap {
static constexpr AttributeId Id = 0x00000002;
} // namespace OccupancySensorTypeBitmap

namespace PIROccupiedToUnoccupiedDelay {
static constexpr AttributeId Id = 0x00000010;
} // namespace PIROccupiedToUnoccupiedDelay

namespace PIRUnoccupiedToOccupiedDelay {
static constexpr AttributeId Id = 0x00000011;
} // namespace PIRUnoccupiedToOccupiedDelay

namespace PIRUnoccupiedToOccupiedThreshold {
static constexpr AttributeId Id = 0x00000012;
} // namespace PIRUnoccupiedToOccupiedThreshold

namespace UltrasonicOccupiedToUnoccupiedDelay {
static constexpr AttributeId Id = 0x00000020;
} // namespace UltrasonicOccupiedToUnoccupiedDelay

namespace UltrasonicUnoccupiedToOccupiedDelay {
static constexpr AttributeId Id = 0x00000021;
} // namespace UltrasonicUnoccupiedToOccupiedDelay

namespace UltrasonicUnoccupiedToOccupiedThreshold {
static constexpr AttributeId Id = 0x00000022;
} // namespace UltrasonicUnoccupiedToOccupiedThreshold

namespace PhysicalContactOccupiedToUnoccupiedDelay {
static constexpr AttributeId Id = 0x00000030;
} // namespace PhysicalContactOccupiedToUnoccupiedDelay

namespace PhysicalContactUnoccupiedToOccupiedDelay {
static constexpr AttributeId Id = 0x00000031;
} // namespace PhysicalContactUnoccupiedToOccupiedDelay

namespace PhysicalContactUnoccupiedToOccupiedThreshold {
static constexpr AttributeId Id = 0x00000032;
} // namespace PhysicalContactUnoccupiedToOccupiedThreshold

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OccupancySensing

namespace CarbonMonoxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace CarbonMonoxideConcentrationMeasurement

namespace CarbonDioxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace CarbonDioxideConcentrationMeasurement

namespace EthyleneConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace EthyleneConcentrationMeasurement

namespace EthyleneOxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace EthyleneOxideConcentrationMeasurement

namespace HydrogenConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace HydrogenConcentrationMeasurement

namespace HydrogenSulfideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace HydrogenSulfideConcentrationMeasurement

namespace NitricOxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace NitricOxideConcentrationMeasurement

namespace NitrogenDioxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace NitrogenDioxideConcentrationMeasurement

namespace OxygenConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OxygenConcentrationMeasurement

namespace OzoneConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace OzoneConcentrationMeasurement

namespace SulfurDioxideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace SulfurDioxideConcentrationMeasurement

namespace DissolvedOxygenConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace DissolvedOxygenConcentrationMeasurement

namespace BromateConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BromateConcentrationMeasurement

namespace ChloraminesConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ChloraminesConcentrationMeasurement

namespace ChlorineConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ChlorineConcentrationMeasurement

namespace FecalColiformEColiConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FecalColiformEColiConcentrationMeasurement

namespace FluorideConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FluorideConcentrationMeasurement

namespace HaloaceticAcidsConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace HaloaceticAcidsConcentrationMeasurement

namespace TotalTrihalomethanesConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TotalTrihalomethanesConcentrationMeasurement

namespace TotalColiformBacteriaConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TotalColiformBacteriaConcentrationMeasurement

namespace TurbidityConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TurbidityConcentrationMeasurement

namespace CopperConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace CopperConcentrationMeasurement

namespace LeadConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace LeadConcentrationMeasurement

namespace ManganeseConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ManganeseConcentrationMeasurement

namespace SulfateConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace SulfateConcentrationMeasurement

namespace BromodichloromethaneConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BromodichloromethaneConcentrationMeasurement

namespace BromoformConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace BromoformConcentrationMeasurement

namespace ChlorodibromomethaneConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ChlorodibromomethaneConcentrationMeasurement

namespace ChloroformConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ChloroformConcentrationMeasurement

namespace SodiumConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace SodiumConcentrationMeasurement

namespace Pm25ConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Pm25ConcentrationMeasurement

namespace FormaldehydeConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FormaldehydeConcentrationMeasurement

namespace Pm1ConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Pm1ConcentrationMeasurement

namespace Pm10ConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Pm10ConcentrationMeasurement

namespace TotalVolatileOrganicCompoundsConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TotalVolatileOrganicCompoundsConcentrationMeasurement

namespace RadonConcentrationMeasurement {
namespace Attributes {

namespace MeasuredValue {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasuredValue

namespace MinMeasuredValue {
static constexpr AttributeId Id = 0x00000001;
} // namespace MinMeasuredValue

namespace MaxMeasuredValue {
static constexpr AttributeId Id = 0x00000002;
} // namespace MaxMeasuredValue

namespace PeakMeasuredValue {
static constexpr AttributeId Id = 0x00000003;
} // namespace PeakMeasuredValue

namespace PeakMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000004;
} // namespace PeakMeasuredValueWindow

namespace AverageMeasuredValue {
static constexpr AttributeId Id = 0x00000005;
} // namespace AverageMeasuredValue

namespace AverageMeasuredValueWindow {
static constexpr AttributeId Id = 0x00000006;
} // namespace AverageMeasuredValueWindow

namespace Uncertainty {
static constexpr AttributeId Id = 0x00000007;
} // namespace Uncertainty

namespace MeasurementUnit {
static constexpr AttributeId Id = 0x00000008;
} // namespace MeasurementUnit

namespace MeasurementMedium {
static constexpr AttributeId Id = 0x00000009;
} // namespace MeasurementMedium

namespace LevelValue {
static constexpr AttributeId Id = 0x0000000A;
} // namespace LevelValue

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace RadonConcentrationMeasurement

namespace WakeOnLan {
namespace Attributes {

namespace MACAddress {
static constexpr AttributeId Id = 0x00000000;
} // namespace MACAddress

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace WakeOnLan

namespace Channel {
namespace Attributes {

namespace ChannelList {
static constexpr AttributeId Id = 0x00000000;
} // namespace ChannelList

namespace Lineup {
static constexpr AttributeId Id = 0x00000001;
} // namespace Lineup

namespace CurrentChannel {
static constexpr AttributeId Id = 0x00000002;
} // namespace CurrentChannel

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace Channel

namespace TargetNavigator {
namespace Attributes {

namespace TargetList {
static constexpr AttributeId Id = 0x00000000;
} // namespace TargetList

namespace CurrentTarget {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentTarget

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace TargetNavigator

namespace MediaPlayback {
namespace Attributes {

namespace CurrentState {
static constexpr AttributeId Id = 0x00000000;
} // namespace CurrentState

namespace StartTime {
static constexpr AttributeId Id = 0x00000001;
} // namespace StartTime

namespace Duration {
static constexpr AttributeId Id = 0x00000002;
} // namespace Duration

namespace SampledPosition {
static constexpr AttributeId Id = 0x00000003;
} // namespace SampledPosition

namespace PlaybackSpeed {
static constexpr AttributeId Id = 0x00000004;
} // namespace PlaybackSpeed

namespace SeekRangeEnd {
static constexpr AttributeId Id = 0x00000005;
} // namespace SeekRangeEnd

namespace SeekRangeStart {
static constexpr AttributeId Id = 0x00000006;
} // namespace SeekRangeStart

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace MediaPlayback

namespace MediaInput {
namespace Attributes {

namespace InputList {
static constexpr AttributeId Id = 0x00000000;
} // namespace InputList

namespace CurrentInput {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentInput

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace MediaInput

namespace LowPower {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace LowPower

namespace KeypadInput {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace KeypadInput

namespace ContentLauncher {
namespace Attributes {

namespace AcceptHeader {
static constexpr AttributeId Id = 0x00000000;
} // namespace AcceptHeader

namespace SupportedStreamingProtocols {
static constexpr AttributeId Id = 0x00000001;
} // namespace SupportedStreamingProtocols

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ContentLauncher

namespace AudioOutput {
namespace Attributes {

namespace OutputList {
static constexpr AttributeId Id = 0x00000000;
} // namespace OutputList

namespace CurrentOutput {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentOutput

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace AudioOutput

namespace ApplicationLauncher {
namespace Attributes {

namespace CatalogList {
static constexpr AttributeId Id = 0x00000000;
} // namespace CatalogList

namespace CurrentApp {
static constexpr AttributeId Id = 0x00000001;
} // namespace CurrentApp

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ApplicationLauncher

namespace ApplicationBasic {
namespace Attributes {

namespace VendorName {
static constexpr AttributeId Id = 0x00000000;
} // namespace VendorName

namespace VendorID {
static constexpr AttributeId Id = 0x00000001;
} // namespace VendorID

namespace ApplicationName {
static constexpr AttributeId Id = 0x00000002;
} // namespace ApplicationName

namespace ProductID {
static constexpr AttributeId Id = 0x00000003;
} // namespace ProductID

namespace Application {
static constexpr AttributeId Id = 0x00000004;
} // namespace Application

namespace Status {
static constexpr AttributeId Id = 0x00000005;
} // namespace Status

namespace ApplicationVersion {
static constexpr AttributeId Id = 0x00000006;
} // namespace ApplicationVersion

namespace AllowedVendorList {
static constexpr AttributeId Id = 0x00000007;
} // namespace AllowedVendorList

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ApplicationBasic

namespace AccountLogin {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace AccountLogin

namespace ElectricalMeasurement {
namespace Attributes {

namespace MeasurementType {
static constexpr AttributeId Id = 0x00000000;
} // namespace MeasurementType

namespace DcVoltage {
static constexpr AttributeId Id = 0x00000100;
} // namespace DcVoltage

namespace DcVoltageMin {
static constexpr AttributeId Id = 0x00000101;
} // namespace DcVoltageMin

namespace DcVoltageMax {
static constexpr AttributeId Id = 0x00000102;
} // namespace DcVoltageMax

namespace DcCurrent {
static constexpr AttributeId Id = 0x00000103;
} // namespace DcCurrent

namespace DcCurrentMin {
static constexpr AttributeId Id = 0x00000104;
} // namespace DcCurrentMin

namespace DcCurrentMax {
static constexpr AttributeId Id = 0x00000105;
} // namespace DcCurrentMax

namespace DcPower {
static constexpr AttributeId Id = 0x00000106;
} // namespace DcPower

namespace DcPowerMin {
static constexpr AttributeId Id = 0x00000107;
} // namespace DcPowerMin

namespace DcPowerMax {
static constexpr AttributeId Id = 0x00000108;
} // namespace DcPowerMax

namespace DcVoltageMultiplier {
static constexpr AttributeId Id = 0x00000200;
} // namespace DcVoltageMultiplier

namespace DcVoltageDivisor {
static constexpr AttributeId Id = 0x00000201;
} // namespace DcVoltageDivisor

namespace DcCurrentMultiplier {
static constexpr AttributeId Id = 0x00000202;
} // namespace DcCurrentMultiplier

namespace DcCurrentDivisor {
static constexpr AttributeId Id = 0x00000203;
} // namespace DcCurrentDivisor

namespace DcPowerMultiplier {
static constexpr AttributeId Id = 0x00000204;
} // namespace DcPowerMultiplier

namespace DcPowerDivisor {
static constexpr AttributeId Id = 0x00000205;
} // namespace DcPowerDivisor

namespace AcFrequency {
static constexpr AttributeId Id = 0x00000300;
} // namespace AcFrequency

namespace AcFrequencyMin {
static constexpr AttributeId Id = 0x00000301;
} // namespace AcFrequencyMin

namespace AcFrequencyMax {
static constexpr AttributeId Id = 0x00000302;
} // namespace AcFrequencyMax

namespace NeutralCurrent {
static constexpr AttributeId Id = 0x00000303;
} // namespace NeutralCurrent

namespace TotalActivePower {
static constexpr AttributeId Id = 0x00000304;
} // namespace TotalActivePower

namespace TotalReactivePower {
static constexpr AttributeId Id = 0x00000305;
} // namespace TotalReactivePower

namespace TotalApparentPower {
static constexpr AttributeId Id = 0x00000306;
} // namespace TotalApparentPower

namespace Measured1stHarmonicCurrent {
static constexpr AttributeId Id = 0x00000307;
} // namespace Measured1stHarmonicCurrent

namespace Measured3rdHarmonicCurrent {
static constexpr AttributeId Id = 0x00000308;
} // namespace Measured3rdHarmonicCurrent

namespace Measured5thHarmonicCurrent {
static constexpr AttributeId Id = 0x00000309;
} // namespace Measured5thHarmonicCurrent

namespace Measured7thHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030A;
} // namespace Measured7thHarmonicCurrent

namespace Measured9thHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030B;
} // namespace Measured9thHarmonicCurrent

namespace Measured11thHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030C;
} // namespace Measured11thHarmonicCurrent

namespace MeasuredPhase1stHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030D;
} // namespace MeasuredPhase1stHarmonicCurrent

namespace MeasuredPhase3rdHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030E;
} // namespace MeasuredPhase3rdHarmonicCurrent

namespace MeasuredPhase5thHarmonicCurrent {
static constexpr AttributeId Id = 0x0000030F;
} // namespace MeasuredPhase5thHarmonicCurrent

namespace MeasuredPhase7thHarmonicCurrent {
static constexpr AttributeId Id = 0x00000310;
} // namespace MeasuredPhase7thHarmonicCurrent

namespace MeasuredPhase9thHarmonicCurrent {
static constexpr AttributeId Id = 0x00000311;
} // namespace MeasuredPhase9thHarmonicCurrent

namespace MeasuredPhase11thHarmonicCurrent {
static constexpr AttributeId Id = 0x00000312;
} // namespace MeasuredPhase11thHarmonicCurrent

namespace AcFrequencyMultiplier {
static constexpr AttributeId Id = 0x00000400;
} // namespace AcFrequencyMultiplier

namespace AcFrequencyDivisor {
static constexpr AttributeId Id = 0x00000401;
} // namespace AcFrequencyDivisor

namespace PowerMultiplier {
static constexpr AttributeId Id = 0x00000402;
} // namespace PowerMultiplier

namespace PowerDivisor {
static constexpr AttributeId Id = 0x00000403;
} // namespace PowerDivisor

namespace HarmonicCurrentMultiplier {
static constexpr AttributeId Id = 0x00000404;
} // namespace HarmonicCurrentMultiplier

namespace PhaseHarmonicCurrentMultiplier {
static constexpr AttributeId Id = 0x00000405;
} // namespace PhaseHarmonicCurrentMultiplier

namespace InstantaneousVoltage {
static constexpr AttributeId Id = 0x00000500;
} // namespace InstantaneousVoltage

namespace InstantaneousLineCurrent {
static constexpr AttributeId Id = 0x00000501;
} // namespace InstantaneousLineCurrent

namespace InstantaneousActiveCurrent {
static constexpr AttributeId Id = 0x00000502;
} // namespace InstantaneousActiveCurrent

namespace InstantaneousReactiveCurrent {
static constexpr AttributeId Id = 0x00000503;
} // namespace InstantaneousReactiveCurrent

namespace InstantaneousPower {
static constexpr AttributeId Id = 0x00000504;
} // namespace InstantaneousPower

namespace RmsVoltage {
static constexpr AttributeId Id = 0x00000505;
} // namespace RmsVoltage

namespace RmsVoltageMin {
static constexpr AttributeId Id = 0x00000506;
} // namespace RmsVoltageMin

namespace RmsVoltageMax {
static constexpr AttributeId Id = 0x00000507;
} // namespace RmsVoltageMax

namespace RmsCurrent {
static constexpr AttributeId Id = 0x00000508;
} // namespace RmsCurrent

namespace RmsCurrentMin {
static constexpr AttributeId Id = 0x00000509;
} // namespace RmsCurrentMin

namespace RmsCurrentMax {
static constexpr AttributeId Id = 0x0000050A;
} // namespace RmsCurrentMax

namespace ActivePower {
static constexpr AttributeId Id = 0x0000050B;
} // namespace ActivePower

namespace ActivePowerMin {
static constexpr AttributeId Id = 0x0000050C;
} // namespace ActivePowerMin

namespace ActivePowerMax {
static constexpr AttributeId Id = 0x0000050D;
} // namespace ActivePowerMax

namespace ReactivePower {
static constexpr AttributeId Id = 0x0000050E;
} // namespace ReactivePower

namespace ApparentPower {
static constexpr AttributeId Id = 0x0000050F;
} // namespace ApparentPower

namespace PowerFactor {
static constexpr AttributeId Id = 0x00000510;
} // namespace PowerFactor

namespace AverageRmsVoltageMeasurementPeriod {
static constexpr AttributeId Id = 0x00000511;
} // namespace AverageRmsVoltageMeasurementPeriod

namespace AverageRmsUnderVoltageCounter {
static constexpr AttributeId Id = 0x00000513;
} // namespace AverageRmsUnderVoltageCounter

namespace RmsExtremeOverVoltagePeriod {
static constexpr AttributeId Id = 0x00000514;
} // namespace RmsExtremeOverVoltagePeriod

namespace RmsExtremeUnderVoltagePeriod {
static constexpr AttributeId Id = 0x00000515;
} // namespace RmsExtremeUnderVoltagePeriod

namespace RmsVoltageSagPeriod {
static constexpr AttributeId Id = 0x00000516;
} // namespace RmsVoltageSagPeriod

namespace RmsVoltageSwellPeriod {
static constexpr AttributeId Id = 0x00000517;
} // namespace RmsVoltageSwellPeriod

namespace AcVoltageMultiplier {
static constexpr AttributeId Id = 0x00000600;
} // namespace AcVoltageMultiplier

namespace AcVoltageDivisor {
static constexpr AttributeId Id = 0x00000601;
} // namespace AcVoltageDivisor

namespace AcCurrentMultiplier {
static constexpr AttributeId Id = 0x00000602;
} // namespace AcCurrentMultiplier

namespace AcCurrentDivisor {
static constexpr AttributeId Id = 0x00000603;
} // namespace AcCurrentDivisor

namespace AcPowerMultiplier {
static constexpr AttributeId Id = 0x00000604;
} // namespace AcPowerMultiplier

namespace AcPowerDivisor {
static constexpr AttributeId Id = 0x00000605;
} // namespace AcPowerDivisor

namespace OverloadAlarmsMask {
static constexpr AttributeId Id = 0x00000700;
} // namespace OverloadAlarmsMask

namespace VoltageOverload {
static constexpr AttributeId Id = 0x00000701;
} // namespace VoltageOverload

namespace CurrentOverload {
static constexpr AttributeId Id = 0x00000702;
} // namespace CurrentOverload

namespace AcOverloadAlarmsMask {
static constexpr AttributeId Id = 0x00000800;
} // namespace AcOverloadAlarmsMask

namespace AcVoltageOverload {
static constexpr AttributeId Id = 0x00000801;
} // namespace AcVoltageOverload

namespace AcCurrentOverload {
static constexpr AttributeId Id = 0x00000802;
} // namespace AcCurrentOverload

namespace AcActivePowerOverload {
static constexpr AttributeId Id = 0x00000803;
} // namespace AcActivePowerOverload

namespace AcReactivePowerOverload {
static constexpr AttributeId Id = 0x00000804;
} // namespace AcReactivePowerOverload

namespace AverageRmsOverVoltage {
static constexpr AttributeId Id = 0x00000805;
} // namespace AverageRmsOverVoltage

namespace AverageRmsUnderVoltage {
static constexpr AttributeId Id = 0x00000806;
} // namespace AverageRmsUnderVoltage

namespace RmsExtremeOverVoltage {
static constexpr AttributeId Id = 0x00000807;
} // namespace RmsExtremeOverVoltage

namespace RmsExtremeUnderVoltage {
static constexpr AttributeId Id = 0x00000808;
} // namespace RmsExtremeUnderVoltage

namespace RmsVoltageSag {
static constexpr AttributeId Id = 0x00000809;
} // namespace RmsVoltageSag

namespace RmsVoltageSwell {
static constexpr AttributeId Id = 0x0000080A;
} // namespace RmsVoltageSwell

namespace LineCurrentPhaseB {
static constexpr AttributeId Id = 0x00000901;
} // namespace LineCurrentPhaseB

namespace ActiveCurrentPhaseB {
static constexpr AttributeId Id = 0x00000902;
} // namespace ActiveCurrentPhaseB

namespace ReactiveCurrentPhaseB {
static constexpr AttributeId Id = 0x00000903;
} // namespace ReactiveCurrentPhaseB

namespace RmsVoltagePhaseB {
static constexpr AttributeId Id = 0x00000905;
} // namespace RmsVoltagePhaseB

namespace RmsVoltageMinPhaseB {
static constexpr AttributeId Id = 0x00000906;
} // namespace RmsVoltageMinPhaseB

namespace RmsVoltageMaxPhaseB {
static constexpr AttributeId Id = 0x00000907;
} // namespace RmsVoltageMaxPhaseB

namespace RmsCurrentPhaseB {
static constexpr AttributeId Id = 0x00000908;
} // namespace RmsCurrentPhaseB

namespace RmsCurrentMinPhaseB {
static constexpr AttributeId Id = 0x00000909;
} // namespace RmsCurrentMinPhaseB

namespace RmsCurrentMaxPhaseB {
static constexpr AttributeId Id = 0x0000090A;
} // namespace RmsCurrentMaxPhaseB

namespace ActivePowerPhaseB {
static constexpr AttributeId Id = 0x0000090B;
} // namespace ActivePowerPhaseB

namespace ActivePowerMinPhaseB {
static constexpr AttributeId Id = 0x0000090C;
} // namespace ActivePowerMinPhaseB

namespace ActivePowerMaxPhaseB {
static constexpr AttributeId Id = 0x0000090D;
} // namespace ActivePowerMaxPhaseB

namespace ReactivePowerPhaseB {
static constexpr AttributeId Id = 0x0000090E;
} // namespace ReactivePowerPhaseB

namespace ApparentPowerPhaseB {
static constexpr AttributeId Id = 0x0000090F;
} // namespace ApparentPowerPhaseB

namespace PowerFactorPhaseB {
static constexpr AttributeId Id = 0x00000910;
} // namespace PowerFactorPhaseB

namespace AverageRmsVoltageMeasurementPeriodPhaseB {
static constexpr AttributeId Id = 0x00000911;
} // namespace AverageRmsVoltageMeasurementPeriodPhaseB

namespace AverageRmsOverVoltageCounterPhaseB {
static constexpr AttributeId Id = 0x00000912;
} // namespace AverageRmsOverVoltageCounterPhaseB

namespace AverageRmsUnderVoltageCounterPhaseB {
static constexpr AttributeId Id = 0x00000913;
} // namespace AverageRmsUnderVoltageCounterPhaseB

namespace RmsExtremeOverVoltagePeriodPhaseB {
static constexpr AttributeId Id = 0x00000914;
} // namespace RmsExtremeOverVoltagePeriodPhaseB

namespace RmsExtremeUnderVoltagePeriodPhaseB {
static constexpr AttributeId Id = 0x00000915;
} // namespace RmsExtremeUnderVoltagePeriodPhaseB

namespace RmsVoltageSagPeriodPhaseB {
static constexpr AttributeId Id = 0x00000916;
} // namespace RmsVoltageSagPeriodPhaseB

namespace RmsVoltageSwellPeriodPhaseB {
static constexpr AttributeId Id = 0x00000917;
} // namespace RmsVoltageSwellPeriodPhaseB

namespace LineCurrentPhaseC {
static constexpr AttributeId Id = 0x00000A01;
} // namespace LineCurrentPhaseC

namespace ActiveCurrentPhaseC {
static constexpr AttributeId Id = 0x00000A02;
} // namespace ActiveCurrentPhaseC

namespace ReactiveCurrentPhaseC {
static constexpr AttributeId Id = 0x00000A03;
} // namespace ReactiveCurrentPhaseC

namespace RmsVoltagePhaseC {
static constexpr AttributeId Id = 0x00000A05;
} // namespace RmsVoltagePhaseC

namespace RmsVoltageMinPhaseC {
static constexpr AttributeId Id = 0x00000A06;
} // namespace RmsVoltageMinPhaseC

namespace RmsVoltageMaxPhaseC {
static constexpr AttributeId Id = 0x00000A07;
} // namespace RmsVoltageMaxPhaseC

namespace RmsCurrentPhaseC {
static constexpr AttributeId Id = 0x00000A08;
} // namespace RmsCurrentPhaseC

namespace RmsCurrentMinPhaseC {
static constexpr AttributeId Id = 0x00000A09;
} // namespace RmsCurrentMinPhaseC

namespace RmsCurrentMaxPhaseC {
static constexpr AttributeId Id = 0x00000A0A;
} // namespace RmsCurrentMaxPhaseC

namespace ActivePowerPhaseC {
static constexpr AttributeId Id = 0x00000A0B;
} // namespace ActivePowerPhaseC

namespace ActivePowerMinPhaseC {
static constexpr AttributeId Id = 0x00000A0C;
} // namespace ActivePowerMinPhaseC

namespace ActivePowerMaxPhaseC {
static constexpr AttributeId Id = 0x00000A0D;
} // namespace ActivePowerMaxPhaseC

namespace ReactivePowerPhaseC {
static constexpr AttributeId Id = 0x00000A0E;
} // namespace ReactivePowerPhaseC

namespace ApparentPowerPhaseC {
static constexpr AttributeId Id = 0x00000A0F;
} // namespace ApparentPowerPhaseC

namespace PowerFactorPhaseC {
static constexpr AttributeId Id = 0x00000A10;
} // namespace PowerFactorPhaseC

namespace AverageRmsVoltageMeasurementPeriodPhaseC {
static constexpr AttributeId Id = 0x00000A11;
} // namespace AverageRmsVoltageMeasurementPeriodPhaseC

namespace AverageRmsOverVoltageCounterPhaseC {
static constexpr AttributeId Id = 0x00000A12;
} // namespace AverageRmsOverVoltageCounterPhaseC

namespace AverageRmsUnderVoltageCounterPhaseC {
static constexpr AttributeId Id = 0x00000A13;
} // namespace AverageRmsUnderVoltageCounterPhaseC

namespace RmsExtremeOverVoltagePeriodPhaseC {
static constexpr AttributeId Id = 0x00000A14;
} // namespace RmsExtremeOverVoltagePeriodPhaseC

namespace RmsExtremeUnderVoltagePeriodPhaseC {
static constexpr AttributeId Id = 0x00000A15;
} // namespace RmsExtremeUnderVoltagePeriodPhaseC

namespace RmsVoltageSagPeriodPhaseC {
static constexpr AttributeId Id = 0x00000A16;
} // namespace RmsVoltageSagPeriodPhaseC

namespace RmsVoltageSwellPeriodPhaseC {
static constexpr AttributeId Id = 0x00000A17;
} // namespace RmsVoltageSwellPeriodPhaseC

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace ElectricalMeasurement

namespace UnitTesting {
namespace Attributes {

namespace Boolean {
static constexpr AttributeId Id = 0x00000000;
} // namespace Boolean

namespace Bitmap8 {
static constexpr AttributeId Id = 0x00000001;
} // namespace Bitmap8

namespace Bitmap16 {
static constexpr AttributeId Id = 0x00000002;
} // namespace Bitmap16

namespace Bitmap32 {
static constexpr AttributeId Id = 0x00000003;
} // namespace Bitmap32

namespace Bitmap64 {
static constexpr AttributeId Id = 0x00000004;
} // namespace Bitmap64

namespace Int8u {
static constexpr AttributeId Id = 0x00000005;
} // namespace Int8u

namespace Int16u {
static constexpr AttributeId Id = 0x00000006;
} // namespace Int16u

namespace Int24u {
static constexpr AttributeId Id = 0x00000007;
} // namespace Int24u

namespace Int32u {
static constexpr AttributeId Id = 0x00000008;
} // namespace Int32u

namespace Int40u {
static constexpr AttributeId Id = 0x00000009;
} // namespace Int40u

namespace Int48u {
static constexpr AttributeId Id = 0x0000000A;
} // namespace Int48u

namespace Int56u {
static constexpr AttributeId Id = 0x0000000B;
} // namespace Int56u

namespace Int64u {
static constexpr AttributeId Id = 0x0000000C;
} // namespace Int64u

namespace Int8s {
static constexpr AttributeId Id = 0x0000000D;
} // namespace Int8s

namespace Int16s {
static constexpr AttributeId Id = 0x0000000E;
} // namespace Int16s

namespace Int24s {
static constexpr AttributeId Id = 0x0000000F;
} // namespace Int24s

namespace Int32s {
static constexpr AttributeId Id = 0x00000010;
} // namespace Int32s

namespace Int40s {
static constexpr AttributeId Id = 0x00000011;
} // namespace Int40s

namespace Int48s {
static constexpr AttributeId Id = 0x00000012;
} // namespace Int48s

namespace Int56s {
static constexpr AttributeId Id = 0x00000013;
} // namespace Int56s

namespace Int64s {
static constexpr AttributeId Id = 0x00000014;
} // namespace Int64s

namespace Enum8 {
static constexpr AttributeId Id = 0x00000015;
} // namespace Enum8

namespace Enum16 {
static constexpr AttributeId Id = 0x00000016;
} // namespace Enum16

namespace FloatSingle {
static constexpr AttributeId Id = 0x00000017;
} // namespace FloatSingle

namespace FloatDouble {
static constexpr AttributeId Id = 0x00000018;
} // namespace FloatDouble

namespace OctetString {
static constexpr AttributeId Id = 0x00000019;
} // namespace OctetString

namespace ListInt8u {
static constexpr AttributeId Id = 0x0000001A;
} // namespace ListInt8u

namespace ListOctetString {
static constexpr AttributeId Id = 0x0000001B;
} // namespace ListOctetString

namespace ListStructOctetString {
static constexpr AttributeId Id = 0x0000001C;
} // namespace ListStructOctetString

namespace LongOctetString {
static constexpr AttributeId Id = 0x0000001D;
} // namespace LongOctetString

namespace CharString {
static constexpr AttributeId Id = 0x0000001E;
} // namespace CharString

namespace LongCharString {
static constexpr AttributeId Id = 0x0000001F;
} // namespace LongCharString

namespace EpochUs {
static constexpr AttributeId Id = 0x00000020;
} // namespace EpochUs

namespace EpochS {
static constexpr AttributeId Id = 0x00000021;
} // namespace EpochS

namespace VendorId {
static constexpr AttributeId Id = 0x00000022;
} // namespace VendorId

namespace ListNullablesAndOptionalsStruct {
static constexpr AttributeId Id = 0x00000023;
} // namespace ListNullablesAndOptionalsStruct

namespace EnumAttr {
static constexpr AttributeId Id = 0x00000024;
} // namespace EnumAttr

namespace StructAttr {
static constexpr AttributeId Id = 0x00000025;
} // namespace StructAttr

namespace RangeRestrictedInt8u {
static constexpr AttributeId Id = 0x00000026;
} // namespace RangeRestrictedInt8u

namespace RangeRestrictedInt8s {
static constexpr AttributeId Id = 0x00000027;
} // namespace RangeRestrictedInt8s

namespace RangeRestrictedInt16u {
static constexpr AttributeId Id = 0x00000028;
} // namespace RangeRestrictedInt16u

namespace RangeRestrictedInt16s {
static constexpr AttributeId Id = 0x00000029;
} // namespace RangeRestrictedInt16s

namespace ListLongOctetString {
static constexpr AttributeId Id = 0x0000002A;
} // namespace ListLongOctetString

namespace ListFabricScoped {
static constexpr AttributeId Id = 0x0000002B;
} // namespace ListFabricScoped

namespace TimedWriteBoolean {
static constexpr AttributeId Id = 0x00000030;
} // namespace TimedWriteBoolean

namespace GeneralErrorBoolean {
static constexpr AttributeId Id = 0x00000031;
} // namespace GeneralErrorBoolean

namespace ClusterErrorBoolean {
static constexpr AttributeId Id = 0x00000032;
} // namespace ClusterErrorBoolean

namespace Unsupported {
static constexpr AttributeId Id = 0x000000FF;
} // namespace Unsupported

namespace NullableBoolean {
static constexpr AttributeId Id = 0x00004000;
} // namespace NullableBoolean

namespace NullableBitmap8 {
static constexpr AttributeId Id = 0x00004001;
} // namespace NullableBitmap8

namespace NullableBitmap16 {
static constexpr AttributeId Id = 0x00004002;
} // namespace NullableBitmap16

namespace NullableBitmap32 {
static constexpr AttributeId Id = 0x00004003;
} // namespace NullableBitmap32

namespace NullableBitmap64 {
static constexpr AttributeId Id = 0x00004004;
} // namespace NullableBitmap64

namespace NullableInt8u {
static constexpr AttributeId Id = 0x00004005;
} // namespace NullableInt8u

namespace NullableInt16u {
static constexpr AttributeId Id = 0x00004006;
} // namespace NullableInt16u

namespace NullableInt24u {
static constexpr AttributeId Id = 0x00004007;
} // namespace NullableInt24u

namespace NullableInt32u {
static constexpr AttributeId Id = 0x00004008;
} // namespace NullableInt32u

namespace NullableInt40u {
static constexpr AttributeId Id = 0x00004009;
} // namespace NullableInt40u

namespace NullableInt48u {
static constexpr AttributeId Id = 0x0000400A;
} // namespace NullableInt48u

namespace NullableInt56u {
static constexpr AttributeId Id = 0x0000400B;
} // namespace NullableInt56u

namespace NullableInt64u {
static constexpr AttributeId Id = 0x0000400C;
} // namespace NullableInt64u

namespace NullableInt8s {
static constexpr AttributeId Id = 0x0000400D;
} // namespace NullableInt8s

namespace NullableInt16s {
static constexpr AttributeId Id = 0x0000400E;
} // namespace NullableInt16s

namespace NullableInt24s {
static constexpr AttributeId Id = 0x0000400F;
} // namespace NullableInt24s

namespace NullableInt32s {
static constexpr AttributeId Id = 0x00004010;
} // namespace NullableInt32s

namespace NullableInt40s {
static constexpr AttributeId Id = 0x00004011;
} // namespace NullableInt40s

namespace NullableInt48s {
static constexpr AttributeId Id = 0x00004012;
} // namespace NullableInt48s

namespace NullableInt56s {
static constexpr AttributeId Id = 0x00004013;
} // namespace NullableInt56s

namespace NullableInt64s {
static constexpr AttributeId Id = 0x00004014;
} // namespace NullableInt64s

namespace NullableEnum8 {
static constexpr AttributeId Id = 0x00004015;
} // namespace NullableEnum8

namespace NullableEnum16 {
static constexpr AttributeId Id = 0x00004016;
} // namespace NullableEnum16

namespace NullableFloatSingle {
static constexpr AttributeId Id = 0x00004017;
} // namespace NullableFloatSingle

namespace NullableFloatDouble {
static constexpr AttributeId Id = 0x00004018;
} // namespace NullableFloatDouble

namespace NullableOctetString {
static constexpr AttributeId Id = 0x00004019;
} // namespace NullableOctetString

namespace NullableCharString {
static constexpr AttributeId Id = 0x0000401E;
} // namespace NullableCharString

namespace NullableEnumAttr {
static constexpr AttributeId Id = 0x00004024;
} // namespace NullableEnumAttr

namespace NullableStruct {
static constexpr AttributeId Id = 0x00004025;
} // namespace NullableStruct

namespace NullableRangeRestrictedInt8u {
static constexpr AttributeId Id = 0x00004026;
} // namespace NullableRangeRestrictedInt8u

namespace NullableRangeRestrictedInt8s {
static constexpr AttributeId Id = 0x00004027;
} // namespace NullableRangeRestrictedInt8s

namespace NullableRangeRestrictedInt16u {
static constexpr AttributeId Id = 0x00004028;
} // namespace NullableRangeRestrictedInt16u

namespace NullableRangeRestrictedInt16s {
static constexpr AttributeId Id = 0x00004029;
} // namespace NullableRangeRestrictedInt16s

namespace WriteOnlyInt8u {
static constexpr AttributeId Id = 0x0000402A;
} // namespace WriteOnlyInt8u

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace UnitTesting

namespace FaultInjection {
namespace Attributes {

namespace GeneratedCommandList {
static constexpr AttributeId Id = Globals::Attributes::GeneratedCommandList::Id;
} // namespace GeneratedCommandList

namespace AcceptedCommandList {
static constexpr AttributeId Id = Globals::Attributes::AcceptedCommandList::Id;
} // namespace AcceptedCommandList

namespace EventList {
static constexpr AttributeId Id = Globals::Attributes::EventList::Id;
} // namespace EventList

namespace AttributeList {
static constexpr AttributeId Id = Globals::Attributes::AttributeList::Id;
} // namespace AttributeList

namespace FeatureMap {
static constexpr AttributeId Id = Globals::Attributes::FeatureMap::Id;
} // namespace FeatureMap

namespace ClusterRevision {
static constexpr AttributeId Id = Globals::Attributes::ClusterRevision::Id;
} // namespace ClusterRevision

} // namespace Attributes
} // namespace FaultInjection

} // namespace Clusters
} // namespace app
} // namespace chip
