def METHOD_NAME(cls):
    if cls._schema_on_200 is not None:
        return cls._schema_on_200
    cls._schema_on_200 = AAZObjectType()
    _schema_on_200 = cls._schema_on_200
    _schema_on_200.etag = AAZStrType()
    _schema_on_200.id = AAZStrType()
    _schema_on_200.location = AAZStrType()
    _schema_on_200.name = AAZStrType(
        flags={"read_only": True},
    )
    _schema_on_200.properties = AAZObjectType(
        flags={"required": True, "client_flatten": True},
    )
    _schema_on_200.tags = AAZDictType()
    _schema_on_200.type = AAZStrType(
        flags={"read_only": True},
    )
    properties = cls._schema_on_200.properties
    properties.bgp_settings = AAZObjectType(
        serialized_name="bgpSettings",
    )
    properties.gateway_ip_address = AAZStrType(
        serialized_name="gatewayIpAddress",
    )
    properties.local_network_address_space = AAZObjectType(
        serialized_name="localNetworkAddressSpace",
    )
    properties.provisioning_state = AAZStrType(
        serialized_name="provisioningState",
        flags={"read_only": True},
    )
    properties.resource_guid = AAZStrType(
        serialized_name="resourceGuid",
    )
    bgp_settings = cls._schema_on_200.properties.bgp_settings
    bgp_settings.asn = AAZIntType()
    bgp_settings.bgp_peering_address = AAZStrType(
        serialized_name="bgpPeeringAddress",
    )
    bgp_settings.peer_weight = AAZIntType(
        serialized_name="peerWeight",
    )
    local_network_address_space = cls._schema_on_200.properties.local_network_address_space
    local_network_address_space.address_prefixes = AAZListType(
        serialized_name="addressPrefixes",
    )
    address_prefixes = cls._schema_on_200.properties.local_network_address_space.address_prefixes
    address_prefixes.Element = AAZStrType()
    tags = cls._schema_on_200.tags
    tags.Element = AAZStrType()
    return cls._schema_on_200