v1alpha1

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2022 License: Apache-2.0 Imports: 14 Imported by: 2

Documentation

Overview

+groupName=sddp.alicloud.kubeform.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: sddp.GroupName, Version: "v1alpha1"}

Functions

func GetDecoder

func GetDecoder() map[string]jsoniter.ValDecoder

func GetEncoder

func GetEncoder() map[string]jsoniter.ValEncoder

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Config

type Config struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ConfigSpec   `json:"spec,omitempty"`
	Status            ConfigStatus `json:"status,omitempty"`
}

func (*Config) DeepCopy

func (in *Config) DeepCopy() *Config

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.

func (*Config) DeepCopyInto

func (in *Config) DeepCopyInto(out *Config)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Config) DeepCopyObject

func (in *Config) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Config) SetupWebhookWithManager

func (r *Config) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Config) ValidateCreate

func (r *Config) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Config) ValidateDelete

func (r *Config) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Config) ValidateUpdate

func (r *Config) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ConfigList

type ConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Config CRD objects
	Items []Config `json:"items,omitempty"`
}

ConfigList is a list of Configs

func (*ConfigList) DeepCopy

func (in *ConfigList) DeepCopy() *ConfigList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigList.

func (*ConfigList) DeepCopyInto

func (in *ConfigList) DeepCopyInto(out *ConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ConfigList) DeepCopyObject

func (in *ConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ConfigSpec

type ConfigSpec struct {
	State *ConfigSpecResource `json:"state,omitempty" tf:"-"`

	Resource ConfigSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ConfigSpec) DeepCopy

func (in *ConfigSpec) DeepCopy() *ConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigSpec.

func (*ConfigSpec) DeepCopyInto

func (in *ConfigSpec) DeepCopyInto(out *ConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfigSpecResource

type ConfigSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Code *string `json:"code,omitempty" tf:"code"`
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// +optional
	Lang *string `json:"lang,omitempty" tf:"lang"`
	// +optional
	Value *string `json:"value,omitempty" tf:"value"`
}

func (*ConfigSpecResource) DeepCopy

func (in *ConfigSpecResource) DeepCopy() *ConfigSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigSpecResource.

func (*ConfigSpecResource) DeepCopyInto

func (in *ConfigSpecResource) DeepCopyInto(out *ConfigSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfigStatus

type ConfigStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ConfigStatus) DeepCopy

func (in *ConfigStatus) DeepCopy() *ConfigStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigStatus.

func (*ConfigStatus) DeepCopyInto

func (in *ConfigStatus) DeepCopyInto(out *ConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataLimit added in v0.5.0

type DataLimit struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DataLimitSpec   `json:"spec,omitempty"`
	Status            DataLimitStatus `json:"status,omitempty"`
}

func (*DataLimit) DeepCopy added in v0.5.0

func (in *DataLimit) DeepCopy() *DataLimit

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLimit.

func (*DataLimit) DeepCopyInto added in v0.5.0

func (in *DataLimit) DeepCopyInto(out *DataLimit)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataLimit) DeepCopyObject added in v0.5.0

func (in *DataLimit) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*DataLimit) SetupWebhookWithManager added in v0.5.0

func (r *DataLimit) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*DataLimit) ValidateCreate added in v0.5.0

func (r *DataLimit) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*DataLimit) ValidateDelete added in v0.5.0

func (r *DataLimit) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*DataLimit) ValidateUpdate added in v0.5.0

func (r *DataLimit) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type DataLimitList added in v0.5.0

type DataLimitList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of DataLimit CRD objects
	Items []DataLimit `json:"items,omitempty"`
}

DataLimitList is a list of DataLimits

func (*DataLimitList) DeepCopy added in v0.5.0

func (in *DataLimitList) DeepCopy() *DataLimitList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLimitList.

func (*DataLimitList) DeepCopyInto added in v0.5.0

func (in *DataLimitList) DeepCopyInto(out *DataLimitList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DataLimitList) DeepCopyObject added in v0.5.0

func (in *DataLimitList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DataLimitSpec added in v0.5.0

type DataLimitSpec struct {
	State *DataLimitSpecResource `json:"state,omitempty" tf:"-"`

	Resource DataLimitSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*DataLimitSpec) DeepCopy added in v0.5.0

func (in *DataLimitSpec) DeepCopy() *DataLimitSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLimitSpec.

func (*DataLimitSpec) DeepCopyInto added in v0.5.0

func (in *DataLimitSpec) DeepCopyInto(out *DataLimitSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataLimitSpecResource added in v0.5.0

type DataLimitSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	AuditStatus *int64 `json:"auditStatus,omitempty" tf:"audit_status"`
	// +optional
	EngineType *string `json:"engineType,omitempty" tf:"engine_type"`
	// +optional
	Lang *string `json:"lang,omitempty" tf:"lang"`
	// +optional
	LogStoreDay *int64 `json:"logStoreDay,omitempty" tf:"log_store_day"`
	// +optional
	ParentID *string `json:"parentID,omitempty" tf:"parent_id"`
	// +optional
	Password *string `json:"password,omitempty" tf:"password"`
	// +optional
	Port         *int64  `json:"port,omitempty" tf:"port"`
	ResourceType *string `json:"resourceType" tf:"resource_type"`
	// +optional
	ServiceRegionID *string `json:"serviceRegionID,omitempty" tf:"service_region_id"`
	// +optional
	UserName *string `json:"userName,omitempty" tf:"user_name"`
}

func (*DataLimitSpecResource) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLimitSpecResource.

func (*DataLimitSpecResource) DeepCopyInto added in v0.5.0

func (in *DataLimitSpecResource) DeepCopyInto(out *DataLimitSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DataLimitStatus added in v0.5.0

type DataLimitStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*DataLimitStatus) DeepCopy added in v0.5.0

func (in *DataLimitStatus) DeepCopy() *DataLimitStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataLimitStatus.

func (*DataLimitStatus) DeepCopyInto added in v0.5.0

func (in *DataLimitStatus) DeepCopyInto(out *DataLimitStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Instance

type Instance struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceSpec   `json:"spec,omitempty"`
	Status            InstanceStatus `json:"status,omitempty"`
}

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instance.

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Instance) DeepCopyObject

func (in *Instance) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Instance) SetupWebhookWithManager

func (r *Instance) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Instance) ValidateCreate

func (r *Instance) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Instance) ValidateDelete

func (r *Instance) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Instance) ValidateUpdate

func (r *Instance) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceList

type InstanceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Instance CRD objects
	Items []Instance `json:"items,omitempty"`
}

InstanceList is a list of Instances

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceList.

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceList) DeepCopyObject

func (in *InstanceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceSpec

type InstanceSpec struct {
	State *InstanceSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpec.

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecResource

type InstanceSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Authed *bool `json:"authed,omitempty" tf:"authed"`
	// +optional
	Dataphin *string `json:"dataphin,omitempty" tf:"dataphin"`
	// +optional
	DataphinCount *string `json:"dataphinCount,omitempty" tf:"dataphin_count"`
	// +optional
	InstanceNum *string `json:"instanceNum,omitempty" tf:"instance_num"`
	// +optional
	Logistics *string `json:"logistics,omitempty" tf:"logistics"`
	// +optional
	ModifyType *string `json:"modifyType,omitempty" tf:"modify_type"`
	// +optional
	OdpsSet *bool `json:"odpsSet,omitempty" tf:"odps_set"`
	// +optional
	OssBucketSet *bool `json:"ossBucketSet,omitempty" tf:"oss_bucket_set"`
	// +optional
	OssSize     *string `json:"ossSize,omitempty" tf:"oss_size"`
	PaymentType *string `json:"paymentType" tf:"payment_type"`
	Period      *int64  `json:"period" tf:"period"`
	// +optional
	RdsSet *bool `json:"rdsSet,omitempty" tf:"rds_set"`
	// +optional
	RemainDays *string `json:"remainDays,omitempty" tf:"remain_days"`
	// +optional
	RenewPeriod *int64 `json:"renewPeriod,omitempty" tf:"renew_period"`
	// +optional
	RenewalStatus *string `json:"renewalStatus,omitempty" tf:"renewal_status"`
	SdCbool       *string `json:"sdCbool" tf:"sd_cbool"`
	Sdc           *string `json:"sdc" tf:"sdc"`
	SddpVersion   *string `json:"sddpVersion" tf:"sddp_version"`
	// +optional
	Status  *string `json:"status,omitempty" tf:"status"`
	UdCbool *string `json:"udCbool" tf:"ud_cbool"`
	Udc     *string `json:"udc" tf:"udc"`
}

func (*InstanceSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecResource.

func (*InstanceSpecResource) DeepCopyInto

func (in *InstanceSpecResource) DeepCopyInto(out *InstanceSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceStatus

type InstanceStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceStatus.

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Rule

type Rule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RuleSpec   `json:"spec,omitempty"`
	Status            RuleStatus `json:"status,omitempty"`
}

func (*Rule) DeepCopy

func (in *Rule) DeepCopy() *Rule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.

func (*Rule) DeepCopyInto

func (in *Rule) DeepCopyInto(out *Rule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Rule) DeepCopyObject

func (in *Rule) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Rule) SetupWebhookWithManager

func (r *Rule) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Rule) ValidateCreate

func (r *Rule) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Rule) ValidateDelete

func (r *Rule) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Rule) ValidateUpdate

func (r *Rule) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RuleList

type RuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Rule CRD objects
	Items []Rule `json:"items,omitempty"`
}

RuleList is a list of Rules

func (*RuleList) DeepCopy

func (in *RuleList) DeepCopy() *RuleList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleList.

func (*RuleList) DeepCopyInto

func (in *RuleList) DeepCopyInto(out *RuleList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RuleList) DeepCopyObject

func (in *RuleList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RuleSpec

type RuleSpec struct {
	State *RuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource RuleSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*RuleSpec) DeepCopy

func (in *RuleSpec) DeepCopy() *RuleSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleSpec.

func (*RuleSpec) DeepCopyInto

func (in *RuleSpec) DeepCopyInto(out *RuleSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RuleSpecResource

type RuleSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	Category *int64  `json:"category" tf:"category"`
	Content  *string `json:"content" tf:"content"`
	// +optional
	ContentCategory *string `json:"contentCategory,omitempty" tf:"content_category"`
	// +optional
	CustomType *int64 `json:"customType,omitempty" tf:"custom_type"`
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// +optional
	Lang *string `json:"lang,omitempty" tf:"lang"`
	// +optional
	ProductCode *string `json:"productCode,omitempty" tf:"product_code"`
	// +optional
	ProductID *string `json:"productID,omitempty" tf:"product_id"`
	// +optional
	RiskLevelID *string `json:"riskLevelID,omitempty" tf:"risk_level_id"`
	RuleName    *string `json:"ruleName" tf:"rule_name"`
	// +optional
	RuleType *int64 `json:"ruleType,omitempty" tf:"rule_type"`
	// +optional
	StatExpress *string `json:"statExpress,omitempty" tf:"stat_express"`
	// +optional
	Status *int64 `json:"status,omitempty" tf:"status"`
	// +optional
	Target *string `json:"target,omitempty" tf:"target"`
	// +optional
	WarnLevel *int64 `json:"warnLevel,omitempty" tf:"warn_level"`
}

func (*RuleSpecResource) DeepCopy

func (in *RuleSpecResource) DeepCopy() *RuleSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleSpecResource.

func (*RuleSpecResource) DeepCopyInto

func (in *RuleSpecResource) DeepCopyInto(out *RuleSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RuleStatus

type RuleStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*RuleStatus) DeepCopy

func (in *RuleStatus) DeepCopy() *RuleStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuleStatus.

func (*RuleStatus) DeepCopyInto

func (in *RuleStatus) DeepCopyInto(out *RuleStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL