UNPKG

@kinvolk/headlamp-plugin

Version:

The needed infrastructure for building Headlamp plugins.

490 lines (489 loc) 26.1 kB
{ "Whoops! This page doesn't exist": "Whoops! This page doesn't exist", "Authentication: {{ clusterName }}": "Authentication: {{ clusterName }}", "Authentication": "Authentication", "Please paste your authentication token.": "Please paste your authentication token.", "ID token": "ID token", "Check out how to generate a<1>service account token</1>.": "Check out how to generate a<1>service account token</1>.", "Cluster settings": "Cluster settings", "Cancel": "Cancel", "Authenticate": "Authenticate", "Error authenticating": "Error authenticating", "Add": "Add", "Add Cluster": "Add Cluster", "Proceed to select your preferred method for cluster creation and addition": "Proceed to select your preferred method for cluster creation and addition", "Load from KubeConfig": "Load from KubeConfig", "Providers": "Providers", "Actions": "Actions", "View": "View", "Settings": "Settings", "Delete": "Delete", "Delete Cluster": "Delete Cluster", "Are you sure you want to remove the cluster \"{{ clusterName }}\"?": "Are you sure you want to remove the cluster \"{{ clusterName }}\"?", "Active": "Active", "Plugin": "Plugin", "In-cluster": "In-cluster", "View Clusters": "View Clusters", "Name": "Name", "Origin": "Origin", "Status": "Status", "Warnings": "Warnings", "Home": "Home", "All Clusters": "All Clusters", "Selected clusters": "Selected clusters", "Load cluster": "Load cluster", "Something went wrong with cluster {{ cluster }}": "Something went wrong with cluster {{ cluster }}", "Choose another cluster": "Choose another cluster", "Skip to main content": "Skip to main content", "Mark all as read": "Mark all as read", "Clear all": "Clear all", "Notifications": "Notifications", "You don't have any notifications right now": "You don't have any notifications right now", "Message": "Message", "No message": "No message", "Date": "Date", "Visible": "Visible", "Mark as read": "Mark as read", "Show notifications": "Show notifications", "You have unread notifications": "You have unread notifications", "Clear": "Clear", "View all notifications": "View all notifications", "Unknown": "Unknown", "Plugins": "Plugins", "Description": "Description", "Incompatible": "Incompatible", "Enabled": "Enabled", "Disabled": "Disabled", "Enable": "Enable", "Save & Apply": "Save & Apply", "By": "By", "Delete Plugin": "Delete Plugin", "Are you sure you want to delete this plugin?": "Are you sure you want to delete this plugin?", "Save": "Save", "Uh-oh! Something went wrong.": "Uh-oh! Something went wrong.", "Error loading {{ routeName }}": "Error loading {{ routeName }}", "Overlay": "Overlay", "Shows resource details in a pane overlaid on the list view instead of a full page.": "Shows resource details in a pane overlaid on the list view instead of a full page.", "Namespaces must contain only lowercase alphanumeric characters or '-', and must start and end with an alphanumeric character.": "Namespaces must contain only lowercase alphanumeric characters or '-', and must start and end with an alphanumeric character.", "Node Shell Settings": "Node Shell Settings", "The default image is used for dropping a shell into a node (when not specified directly).": "The default image is used for dropping a shell into a node (when not specified directly).", "The default namespace is kube-system.": "The default namespace is kube-system.", "Enter a value between {{ minRows }} and {{ maxRows }}.": "Enter a value between {{ minRows }} and {{ maxRows }}.", "Custom row value": "Custom row value", "Apply": "Apply", "Custom value": "Custom value", "General Settings": "General Settings", "Version": "Version", "Language": "Language", "Resource details view": "Resource details view", "Number of rows for tables": "Number of rows for tables", "Timezone to display for dates": "Timezone to display for dates", "Sort sidebar items alphabetically": "Sort sidebar items alphabetically", "Use evict for pod deletion": "Use evict for pod deletion", "Theme": "Theme", "Cluster name must contain only lowercase alphanumeric characters or '-', and must start and end with an alphanumeric character.": "Cluster name must contain only lowercase alphanumeric characters or '-', and must start and end with an alphanumeric character.", "Cluster Settings": "Cluster Settings", "There seem to be no clusters configured…": "There seem to be no clusters configured…", "Cluster {{ clusterName }} does not exist. Please select a valid cluster:": "Cluster {{ clusterName }} does not exist. Please select a valid cluster:", "Go to cluster": "Go to cluster", "The current name of the cluster. You can define a custom name.": "The current name of the cluster. You can define a custom name.", "Change name": "Change name", "Are you sure you want to change the name for \"{{ clusterName }}\"?": "Are you sure you want to change the name for \"{{ clusterName }}\"?", "Default namespace": "Default namespace", "The default namespace for e.g. when applying resources (when not specified directly).": "The default namespace for e.g. when applying resources (when not specified directly).", "Allowed namespaces": "Allowed namespaces", "The list of namespaces you are allowed to access in this cluster.": "The list of namespaces you are allowed to access in this cluster.", "Add namespace": "Add namespace", "Remove Cluster": "Remove Cluster", "Server": "Server", "Log out": "Log out", "(No token set up)": "(No token set up)", "Account of current user": "Account of current user", "Appbar Tools": "Appbar Tools", "show more": "show more", "Getting auth info: {{ clusterName }}": "Getting auth info: {{ clusterName }}", "Getting auth info": "Getting auth info", "Testing auth": "Testing auth", "Headlamp Cluster Authentication": "Headlamp Cluster Authentication", "Sign In": "Sign In", "Use A Token": "Use A Token", "Failed to connect. Please make sure the Kubernetes cluster is running and accessible. Error: {{ errorMessage }}": "Failed to connect. Please make sure the Kubernetes cluster is running and accessible. Error: {{ errorMessage }}", "Failed to get authentication information: {{ errorMessage }}": "Failed to get authentication information: {{ errorMessage }}", "Try Again": "Try Again", "Back": "Back", "Memory Usage": "Memory Usage", "{{ available }} units": "{{ available }} units", "CPU Usage": "CPU Usage", "{{ numReady }} / {{ numItems }} Requested": "{{ numReady }} / {{ numItems }} Requested", "{{ numReady }} / {{ numItems }} Ready": "{{ numReady }} / {{ numItems }} Ready", "Recent clusters": "Recent clusters", "All clusters": "All clusters", "Show build information": "Show build information", "Choose a cluster": "Choose a cluster", "Wait while fetching clusters…": "Wait while fetching clusters…", "Loading cluster information": "Loading cluster information", "There seems to be no clusters configured…": "There seems to be no clusters configured…", "Please make sure you have at least one cluster configured.": "Please make sure you have at least one cluster configured.", "Or try running Headlamp with a different kube config.": "Or try running Headlamp with a different kube config.", "Load from a file": "Load from a file", "Cluster: {{cluster}}": "Cluster: {{cluster}}", "Current//context:cluster": "Current", "Choose cluster": "Choose cluster", "Failed to load resources": "Failed to load resources", "You don't have permissions to view this resource": "You don't have permissions to view this resource", "Resource not found": "Resource not found", "Hide details": "Hide details", "Show details": "Show details", "Duplicate cluster: {{ clusterNames }} in the list. Please edit the context name.": "Duplicate cluster: {{ clusterNames }} in the list. Please edit the context name.", "Error setting up clusters, please load a valid kubeconfig file": "Error setting up clusters, please load a valid kubeconfig file", "Couldn't read kubeconfig file": "Couldn't read kubeconfig file", "No clusters found!": "No clusters found!", "No contexts found!": "No contexts found!", "Invalid kubeconfig file: {{ errorMessage }}": "Invalid kubeconfig file: {{ errorMessage }}", "Drag & drop or choose kubeconfig file here": "Drag & drop or choose kubeconfig file here", "Choose file": "Choose file", "Select clusters": "Select clusters", "Next": "Next", "Validating selected clusters": "Validating selected clusters", "Setting up clusters": "Setting up clusters", "Clusters successfully set up!": "Clusters successfully set up!", "Finish": "Finish", "Overview": "Overview", "Only warnings ({{ numWarnings }})": "Only warnings ({{ numWarnings }})", "Type": "Type", "Reason": "Reason", "Last Seen": "Last Seen", "Offline": "Offline", "Lost connection to the cluster.": "Lost connection to the cluster.", "No": "No", "Yes": "Yes", "Create {{ name }}": "Create {{ name }}", "Toggle fullscreen": "Toggle fullscreen", "Close": "Close", "Head back <1>home</1>.": "Head back <1>home</1>.", "Error Details": "Error Details", "Copy": "Copy", "Find": "Find", "Download": "Download", "No results": "No results", "Too many matches": "Too many matches", "{{ currentIndex }} of {{ totalResults }}": "{{ currentIndex }} of {{ totalResults }}", "Match case": "Match case", "Match whole word": "Match whole word", "Use regular expression": "Use regular expression", "Previous Match (Shift+Enter)": "Previous Match (Shift+Enter)", "Next Match (Enter)": "Next Match (Enter)", "All namespaces": "All namespaces", "From": "From", "Age": "Age", "{{ eventDate }} ({{ count }} times since {{ firstEventDate }})_one": "{{ eventDate }} ({{ count }} times since {{ firstEventDate }})", "{{ eventDate }} ({{ count }} times since {{ firstEventDate }})_other": "{{ eventDate }} ({{ count }} times since {{ firstEventDate }})", "Release Notes ({{ appVersion }})": "Release Notes ({{ appVersion }})", "Fetching release information…": "Fetching release information…", "Skip": "Skip", "Failed to fetch release information": "Failed to fetch release information", "An update is available": "An update is available", "Read more": "Read more", "Dismiss": "Dismiss", "Install the metrics-server to get usage data.": "Install the metrics-server to get usage data.", "Create / Apply": "Create / Apply", "Create": "Create", "Deleting item {{ itemName }}…": "Deleting item {{ itemName }}…", "Cancelled deletion of {{ itemName }}.": "Cancelled deletion of {{ itemName }}.", "Deleted item {{ itemName }}.": "Deleted item {{ itemName }}.", "Error deleting item {{ itemName }}.": "Error deleting item {{ itemName }}.", "Evict": "Evict", "Evict Pod": "Evict Pod", "Delete item": "Delete item", "Are you sure you want to evict pod {{ itemName }}?": "Are you sure you want to evict pod {{ itemName }}?", "Are you sure you want to delete item {{ itemName }}?": "Are you sure you want to delete item {{ itemName }}?", "Force Delete": "Force Delete", "Are you sure you want to delete the following items?": "Are you sure you want to delete the following items?", "Deleting {{ itemsLength }} items…": "Deleting {{ itemsLength }} items…", "Cancelled deletion of {{ itemsLength }} items.": "Cancelled deletion of {{ itemsLength }} items.", "Deleted {{ itemsLength }} items.": "Deleted {{ itemsLength }} items.", "Error deleting {{ itemsLength }} items.": "Error deleting {{ itemsLength }} items.", "Delete items": "Delete items", "Loading documentation": "Loading documentation", "No documentation available.": "No documentation available.", "No documentation for type {{ docsType }}.": "No documentation for type {{ docsType }}.", "Showing documentation for: {{ docsType }}": "Showing documentation for: {{ docsType }}", "Applying changes to {{ itemName }}…": "Applying changes to {{ itemName }}…", "Cancelled changes to {{ itemName }}.": "Cancelled changes to {{ itemName }}.", "Applied changes to {{ itemName }}.": "Applied changes to {{ itemName }}.", "Failed to apply changes to {{ itemName }}.": "Failed to apply changes to {{ itemName }}.", "Edit": "Edit", "Invalid JSON": "Invalid JSON", "Invalid YAML": "Invalid YAML", "Failed to create {{ kind }} {{ name }}.": "Failed to create {{ kind }} {{ name }}.", "Failed to create {{ kind }} {{ name }} in {{ apiVersion }}.": "Failed to create {{ kind }} {{ name }} in {{ apiVersion }}.", "Error parsing the code: {{error}}": "Error parsing the code: {{error}}", "Error parsing the code. Please verify it's valid YAML or JSON!": "Error parsing the code. Please verify it's valid YAML or JSON!", "Applying {{ newItemName }}…": "Applying {{ newItemName }}…", "Cancelled applying {{ newItemName }}.": "Cancelled applying {{ newItemName }}.", "Applied {{ newItemName }}.": "Applied {{ newItemName }}.", "Failed to apply {{ newItemName }}.": "Failed to apply {{ newItemName }}.", "New Object": "New Object", "View: {{ itemName }}": "View: {{ itemName }}", "Edit: {{ itemName }}": "Edit: {{ itemName }}", "Loading editor": "Loading editor", "Hide Managed Fields": "Hide Managed Fields", "Use minimal editor": "Use minimal editor", "Editor": "Editor", "Documentation": "Documentation", "Undo": "Undo", "Are you sure?": "Are you sure?", "This will discard your changes in the editor. Do you want to proceed?": "This will discard your changes in the editor. Do you want to proceed?", "Undo Changes": "Undo Changes", "No label selectors found for this {{type}}": "No label selectors found for this {{type}}", "Invalid response from server": "Invalid response from server", "Failed to fetch related pods": "Failed to fetch related pods", "No pods found for this workload": "No pods found for this workload", "Failed to fetch pods: {{error}}": "Failed to fetch pods: {{error}}", "Logs are paused. Click the follow button to resume following them.": "Logs are paused. Click the follow button to resume following them.", "Select Pod": "Select Pod", "All Pods": "All Pods", "Container": "Container", "Restarted": "Restarted", "Show logs for previous instances of this container.": "Show logs for previous instances of this container.", "You can only select this option for containers that have been restarted.": "You can only select this option for containers that have been restarted.", "Show previous": "Show previous", "Timestamps": "Timestamps", "Follow": "Follow", "Show logs": "Show logs", "Loading resource data": "Loading resource data", "Creation": "Creation", "Labels": "Labels", "Annotations": "Annotations", "Owner refs": "Owner refs", "Controlled by": "Controlled by", "Start port forward": "Start port forward", "Forward port": "Forward port", "Delete port forward": "Delete port forward", "Stop port forward": "Stop port forward", "Mount Path": "Mount Path", "from": "from", "I/O": "I/O", "Ready": "Ready", "Waiting": "Waiting", "Running": "Running", "Error": "Error", "Exit Code": "Exit Code", "Started": "Started", "Finished": "Finished", "Restart Count": "Restart Count", "Last State": "Last State", "No data to be shown.": "No data to be shown.", "Init Containers": "Init Containers", "Conditions": "Conditions", "Volumes": "Volumes", "Restarting {{ itemName }}…": "Restarting {{ itemName }}…", "Cancelled restarting {{ itemName }}.": "Cancelled restarting {{ itemName }}.", "Restarted {{ itemName }}.": "Restarted {{ itemName }}.", "Failed to restart {{ itemName }}.": "Failed to restart {{ itemName }}.", "Restart": "Restart", "Are you sure you want to restart {{ itemName }}?": "Are you sure you want to restart {{ itemName }}?", "Are you sure you want to restart the following items?": "Are you sure you want to restart the following items?", "Restarting {{ itemsLength }} items…": "Restarting {{ itemsLength }} items…", "Cancelled restarting {{ itemsLength }} items.": "Cancelled restarting {{ itemsLength }} items.", "Restarted {{ itemsLength }} items.": "Restarted {{ itemsLength }} items.", "Failed to restart {{ itemsLength }} items.": "Failed to restart {{ itemsLength }} items.", "Restart items": "Restart items", "Scaling {{ itemName }}…": "Scaling {{ itemName }}…", "Cancelled scaling {{ itemName }}.": "Cancelled scaling {{ itemName }}.", "Scaled {{ itemName }}.": "Scaled {{ itemName }}.", "Failed to scale {{ itemName }}.": "Failed to scale {{ itemName }}.", "Scale": "Scale", "Scale Replicas": "Scale Replicas", "Current number of replicas: {{ numReplicas }}": "Current number of replicas: {{ numReplicas }}", "Desired number of replicas:": "Desired number of replicas:", "Decrement": "Decrement", "Increment": "Increment", "A large number of replicas may negatively impact the cluster's performance": "A large number of replicas may negatively impact the cluster's performance", "View YAML": "View YAML", "Collapse": "Collapse", "Expand": "Expand", "sort up": "sort up", "sort down": "sort down", "sort swap": "sort swap", "Loading table data": "Loading table data", "Refresh": "Refresh", "No data matching the filter criteria.": "No data matching the filter criteria.", "No results found": "No results found", "Any new output for this container's process should be shown below. In case it doesn't show up, press enter…": "Any new output for this container's process should be shown below. In case it doesn't show up, press enter…", "Failed to run \"{{command}}\"…": "Failed to run \"{{command}}\"…", "Failed to connect…": "Failed to connect…", "Press the enter key to reconnect.": "Press the enter key to reconnect.", "Failed to run \"{{ command }}\"": "Failed to run \"{{ command }}\"", "Trying to attach to the container {{ container }}…": "Trying to attach to the container {{ container }}…", "Trying to run \"{{command}}\"…": "Trying to run \"{{command}}\"…", "Attach: {{ itemName }}": "Attach: {{ itemName }}", "Terminal: {{ itemName }}": "Terminal: {{ itemName }}", "Timezone": "Timezone", "Data": "Data", "No data in this config map": "No data in this config map", "Error getting custom resource definition {{ crdName }}: {{ errorMessage }}": "Error getting custom resource definition {{ crdName }}: {{ errorMessage }}", "Loading custom resource details": "Loading custom resource details", "Error getting custom resource {{ crName }}: {{ errorMessage }}": "Error getting custom resource {{ crName }}: {{ errorMessage }}", "Loading custom resource instances": "Loading custom resource instances", "No custom resources instances found.": "No custom resources instances found.", "Failed to load custom resource instances": "Failed to load custom resource instances", "Error getting custom resource definitions: {{ errorMessage }}": "Error getting custom resource definitions: {{ errorMessage }}", "Loading custom resource definitions": "Loading custom resource definitions", "Loading custom resource definition": "Loading custom resource definition", "No custom resources found": "No custom resources found", "Loading resource definition details": "Loading resource definition details", "Group": "Group", "Categories": "Categories", "Accepted Names": "Accepted Names", "Versions": "Versions", "Spawning Job {{ newItemName }}…": "Spawning Job {{ newItemName }}…", "Job {{ newItemName }} spawned": "Job {{ newItemName }} spawned", "Failed to spawn Job {{ newItemName }}": "Failed to spawn Job {{ newItemName }}", "Spawn Job": "Spawn Job", "This will trigger a new Job based on the CronJob {{ name }}": "This will trigger a new Job based on the CronJob {{ name }}", "Job Name": "Job Name", "Spawn": "Spawn", "Suspending CronJob {{ newItemName }}…": "Suspending CronJob {{ newItemName }}…", "Resuming CronJob {{ newItemName }}…": "Resuming CronJob {{ newItemName }}…", "Cancelled suspending CronJob {{ newItemName }}.": "Cancelled suspending CronJob {{ newItemName }}.", "Cancelled resuming CronJob {{ newItemName }}.": "Cancelled resuming CronJob {{ newItemName }}.", "Suspended CronJob {{ newItemName }}.": "Suspended CronJob {{ newItemName }}.", "Resumed CronJob {{ newItemName }}.": "Resumed CronJob {{ newItemName }}.", "Failed to suspend CronJob {{ newItemName }}.": "Failed to suspend CronJob {{ newItemName }}.", "Failed to resume CronJob {{ newItemName }}.": "Failed to resume CronJob {{ newItemName }}.", "Resume": "Resume", "Suspend": "Suspend", "Key": "Key", "Operator": "Operator", "Value": "Value", "Effect": "Effect", "Current": "Current", "Desired//context:pods": "Desired", "Addresses": "Addresses", "Hostname": "Hostname", "Port": "Port", "Protocol": "Protocol", "No addresses data to be shown.": "No addresses data to be shown.", "Listeners": "Listeners", "BackendRefs": "BackendRefs", "Matches": "Matches", "rules": "rules", "ParentRefs": "ParentRefs", "No rules data to be shown.": "No rules data to be shown.", "Namespace": "Namespace", "Kind": "Kind", "Section Name": "Section Name", "Search": "Search", "Press<1>/</1>to search": "Press<1>/</1>to search", "Search resources, pages, clusters by name": "Search resources, pages, clusters by name", "Page": "Page", "Reference": "Reference", "Metrics": "Metrics", "(Current/Target)": "(Current/Target)", "MinReplicas": "MinReplicas", "MaxReplicas": "MaxReplicas", "Deployment pods": "Deployment pods", "{{ currentReplicas }} current / {{ desiredReplicas }} desired": "{{ currentReplicas }} current / {{ desiredReplicas }} desired", "Targets": "Targets", "more…": "more…", "Default": "Default", "Host": "Host", "Path": "Path", "Duration": "Duration", "Holder Identity": "Holder Identity", "Lease Duration Seconds": "Lease Duration Seconds", "Renew Time": "Renew Time", "Holder": "Holder", "Container Limits": "Container Limits", "Default Request": "Default Request", "Max": "Max", "Min": "Min", "A namespace with this name already exists.": "A namespace with this name already exists.", "Applying {{ newItemName }}…": "Applying {{ newItemName }}…", "Cancelled applying {{ newItemName }}.": "Cancelled applying {{ newItemName }}.", "Namespaces must be under 64 characters.": "Namespaces must be under 64 characters.", "Create Namespace": "Create Namespace", "To": "To", "used": "used", "Scheduling Disabled": "Scheduling Disabled", "Scheduling Enabled": "Scheduling Enabled", "Taints": "Taints", "Not ready yet!": "Not ready yet!", "Internal IP": "Internal IP", "None": "None", "Software": "Software", "Redirecting to main page…": "Redirecting to main page…", "Lines": "Lines", "Max Unavailable": "Max Unavailable", "Min Available": "Min Available", "Allowed disruptions": "Allowed disruptions", "Current//context:pods": "Current", "Total": "Total", "N/A": "N/A", "Allowed Disruptions": "Allowed Disruptions", "Start": "Start", "Stop": "Stop", "Loading port forwarding": "Loading port forwarding", "Pod Port": "Pod Port", "Local Port": "Local Port", "More": "More", "Global Default": "Global Default", "Preemption Policy": "Preemption Policy", "Current//context:replicas": "Current", "Desired//context:replicas": "Desired", "Zoom in": "Zoom in", "Zoom out": "Zoom out", "No data to be shown. Try to change filters or select a different namespace.": "No data to be shown. Try to change filters or select a different namespace.", "Group By": "Group By", "Instance": "Instance", "Node": "Node", "Status: Error or Warning": "Status: Error or Warning", "Expand All": "Expand All", "Fit to screen": "Fit to screen", "Zoom to 100%": "Zoom to 100%", "Used": "Used", "Hard": "Hard", "Request": "Request", "Limit": "Limit", "Users": "Users", "Handler": "Handler", "No data in this secret": "No data in this secret", "Shrink sidebar": "Shrink sidebar", "Expand sidebar": "Expand sidebar", "Main Navigation": "Main Navigation", "Navigation Tabs": "Navigation Tabs", "Collapse Sidebar": "Collapse Sidebar", "Navigation": "Navigation", "General": "General", "Clusters": "Clusters", "Instances": "Instances", "Cluster version upgraded to {{ gitVersion }}": "Cluster version upgraded to {{ gitVersion }}", "Cluster version downgraded to {{ gitVersion }}": "Cluster version downgraded to {{ gitVersion }}", "Controlled Resources": "Controlled Resources", "Controlled Values": "Controlled Values", "Min Allowed": "Min Allowed", "Max Allowed": "Max Allowed", "Mode": "Mode", "Last Transition Time": "Last Transition Time", "Recommendations": "Recommendations", "Provided": "Provided", "Admission Review Versions": "Admission Review Versions", "Client Config: URL": "Client Config: URL", "Client Config: Service": "Client Config: Service", "Service: {{namespace}}/{{name}}": "Service: {{namespace}}/{{name}}", "Path: {{ path }}:{{ port }}": "Path: {{ path }}:{{ port }}", "Operations": "Operations", "0 Running": "0 Running", "Ready//context:replicas": "Ready", "Up to date//context:replicas": "Up to date", "Available//context:replicas": "Available", "Failed": "Failed", "Select locale": "Select locale", "<unknown>": "<unknown>", "\"{{metricName}}\" on {{objectKind}}/{{objectName}} {{metricTarget}}": "\"{{metricName}}\" on {{objectKind}}/{{objectName}} {{metricTarget}}", "\"{{metricName}}\" on pods": "\"{{metricName}}\" on pods", "resource {{resourceName}} on pods": "resource {{resourceName}} on pods", "resource {{resourceName}} of container {{containerName}} on pods": "resource {{resourceName}} of container {{containerName}} on pods", "Warning. Incompatible plugins disabled: ({{ pluginList }})": "Warning. Incompatible plugins disabled: ({{ pluginList }})" }