From 2cd005cac6d586b8ca324814a9c58ed0c08ffe40 Mon Sep 17 00:00:00 2001
From: Dominik Brodowski <linux@dominikbrodowski.net>
Date: Tue, 19 Apr 2011 20:16:05 +0200
Subject: [PATCH] cpupowerutils: helpers - ConfigStyle bugfixes

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
---
 tools/power/cpupower/utils/helpers/amd.c      |   8 +-
 tools/power/cpupower/utils/helpers/bitmask.c  |  12 +-
 tools/power/cpupower/utils/helpers/cpuid.c    |  14 +--
 tools/power/cpupower/utils/helpers/helpers.h  |   6 +-
 tools/power/cpupower/utils/helpers/misc.c     |   3 +-
 tools/power/cpupower/utils/helpers/pci.c      |   2 +-
 tools/power/cpupower/utils/helpers/sysfs.c    | 112 ++++++++++--------
 tools/power/cpupower/utils/helpers/sysfs.h    |  23 ++--
 tools/power/cpupower/utils/helpers/topology.c |   6 +-
 9 files changed, 100 insertions(+), 86 deletions(-)

diff --git a/tools/power/cpupower/utils/helpers/amd.c b/tools/power/cpupower/utils/helpers/amd.c
index 5e44e31fc7f959..87d5605bdda823 100644
--- a/tools/power/cpupower/utils/helpers/amd.c
+++ b/tools/power/cpupower/utils/helpers/amd.c
@@ -53,8 +53,8 @@ static int get_cof(int family, union msr_pstate pstate)
 	if (family == 0x11)
 		t = 0x8;
 
-	return ((100 * (fid + t)) >> did);
- }
+	return (100 * (fid + t)) >> did;
+}
 
 /* Needs:
  * cpu          -> the cpu that gets evaluated
@@ -74,7 +74,7 @@ int decode_pstates(unsigned int cpu, unsigned int cpu_family,
 {
 	int i, psmax, pscur;
 	union msr_pstate pstate;
-        unsigned long long val;
+	unsigned long long val;
 
 	/* Only read out frequencies from HW when CPU might be boostable
 	   to keep the code as short and clean as possible.
@@ -95,7 +95,7 @@ int decode_pstates(unsigned int cpu, unsigned int cpu_family,
 
 	pscur += boost_states;
 	psmax += boost_states;
-	for (i=0; i<=psmax; i++) {
+	for (i = 0; i <= psmax; i++) {
 		if (i >= MAX_HW_PSTATES) {
 			fprintf(stderr, "HW pstates [%d] exceeding max [%d]\n",
 				psmax, MAX_HW_PSTATES);
diff --git a/tools/power/cpupower/utils/helpers/bitmask.c b/tools/power/cpupower/utils/helpers/bitmask.c
index 60f4d69bb20d04..5c074c60f90441 100644
--- a/tools/power/cpupower/utils/helpers/bitmask.c
+++ b/tools/power/cpupower/utils/helpers/bitmask.c
@@ -8,12 +8,12 @@
 #define bitsperlong (8 * sizeof(unsigned long))
 
 /* howmany(a,b) : how many elements of size b needed to hold all of a */
-#define howmany(x,y) (((x)+((y)-1))/(y))
+#define howmany(x, y) (((x)+((y)-1))/(y))
 
 /* How many longs in mask of n bits */
 #define longsperbits(n) howmany(n, bitsperlong)
 
-#define max(a,b) ((a) > (b) ? (a) : (b))
+#define max(a, b) ((a) > (b) ? (a) : (b))
 
 /*
  * Allocate and free `struct bitmask *`
@@ -73,7 +73,8 @@ static void _setbit(struct bitmask *bmp, unsigned int n, unsigned int v)
 		if (v)
 			bmp->maskp[n/bitsperlong] |= 1UL << (n % bitsperlong);
 		else
-			bmp->maskp[n/bitsperlong] &= ~(1UL << (n % bitsperlong));
+			bmp->maskp[n/bitsperlong] &=
+				~(1UL << (n % bitsperlong));
 	}
 }
 
@@ -185,7 +186,7 @@ unsigned int bitmask_next(const struct bitmask *bmp, unsigned int i)
  *	0-3		0,1,2,3
  *	0-7:2		0,2,4,6
  *	1,3,5-7		1,3,5,6,7
- *	0-3:2,8-15:4	0,2,8,12	
+ *	0-3:2,8-15:4	0,2,8,12
  */
 int bitmask_parselist(const char *buf, struct bitmask *bmp)
 {
@@ -251,7 +252,8 @@ static inline int emit(char *buf, int buflen, int rbot, int rtop, int len)
 	if (rbot == rtop)
 		len += snprintf(buf + len, max(buflen - len, 0), "%d", rbot);
 	else
-		len += snprintf(buf + len, max(buflen - len, 0), "%d-%d", rbot, rtop);
+		len += snprintf(buf + len, max(buflen - len, 0), "%d-%d",
+				rbot, rtop);
 	return len;
 }
 
diff --git a/tools/power/cpupower/utils/helpers/cpuid.c b/tools/power/cpupower/utils/helpers/cpuid.c
index 71021f3bb69d85..944b2c1659d8c8 100644
--- a/tools/power/cpupower/utils/helpers/cpuid.c
+++ b/tools/power/cpupower/utils/helpers/cpuid.c
@@ -67,28 +67,26 @@ int get_cpu_info(unsigned int cpu, struct cpupower_cpu_info *cpu_info)
 			continue;
 		value[63 - 1] = '\0';
 
-		if (!strncmp(value, "processor\t: ", 12)) {
+		if (!strncmp(value, "processor\t: ", 12))
 			sscanf(value, "processor\t: %u", &proc);
-		}
+
 		if (proc != cpu)
 			continue;
 
 		/* Get CPU vendor */
-		if (!strncmp(value, "vendor_id", 9))
+		if (!strncmp(value, "vendor_id", 9)) {
 			for (x = 1; x < X86_VENDOR_MAX; x++) {
 				if (strstr(value, cpu_vendor_table[x]))
 					cpu_info->vendor = x;
 			}
 		/* Get CPU family, etc. */
-		else if (!strncmp(value, "cpu family\t: ", 13)) {
+		} else if (!strncmp(value, "cpu family\t: ", 13)) {
 			sscanf(value, "cpu family\t: %u",
 			       &cpu_info->family);
-		}
-		else if (!strncmp(value, "model\t\t: ", 9)) {
+		} else if (!strncmp(value, "model\t\t: ", 9)) {
 			sscanf(value, "model\t\t: %u",
 			       &cpu_info->model);
-		}
-		else if (!strncmp(value, "stepping\t: ", 10)) {
+		} else if (!strncmp(value, "stepping\t: ", 10)) {
 			sscanf(value, "stepping\t: %u",
 			       &cpu_info->stepping);
 
diff --git a/tools/power/cpupower/utils/helpers/helpers.h b/tools/power/cpupower/utils/helpers/helpers.h
index a487dadb4cf08e..048f065925c9bb 100644
--- a/tools/power/cpupower/utils/helpers/helpers.h
+++ b/tools/power/cpupower/utils/helpers/helpers.h
@@ -20,7 +20,7 @@
 #ifndef gettext_noop
 #define gettext_noop(String) String
 #endif
-#define N_(String) gettext_noop (String)
+#define N_(String) gettext_noop(String)
 /* Internationalization ****************************/
 
 extern int run_as_root;
@@ -39,11 +39,11 @@ extern int be_verbose;
 #define dprint(fmt, ...) {					\
 		if (be_verbose) {				\
 			fprintf(stderr, "%s: " fmt,		\
-				__FUNCTION__, ##__VA_ARGS__);	\
+				__func__, ##__VA_ARGS__);	\
 		}						\
 	}
 #else
-static inline void dprint(const char *fmt, ...) { }	 
+static inline void dprint(const char *fmt, ...) { }
 #endif
 extern int be_verbose;
 /* Global verbose (-v) stuff *********************************/
diff --git a/tools/power/cpupower/utils/helpers/misc.c b/tools/power/cpupower/utils/helpers/misc.c
index c1566e93e0ec4d..e8b3140cc6b83a 100644
--- a/tools/power/cpupower/utils/helpers/misc.c
+++ b/tools/power/cpupower/utils/helpers/misc.c
@@ -2,7 +2,8 @@
 
 #include "helpers/helpers.h"
 
-int cpufreq_has_boost_support(unsigned int cpu, int *support, int *active, int * states)
+int cpufreq_has_boost_support(unsigned int cpu, int *support, int *active,
+			int *states)
 {
 	struct cpupower_cpu_info cpu_info;
 	int ret;
diff --git a/tools/power/cpupower/utils/helpers/pci.c b/tools/power/cpupower/utils/helpers/pci.c
index 8dcc938137167c..cd2eb6fe41c457 100644
--- a/tools/power/cpupower/utils/helpers/pci.c
+++ b/tools/power/cpupower/utils/helpers/pci.c
@@ -33,7 +33,7 @@ struct pci_dev *pci_acc_init(struct pci_access **pacc, int vendor_id,
 
 	for (i = 0; dev_ids[i] != 0; i++) {
 		filter_nb_link.device = dev_ids[i];
-		for (device=(*pacc)->devices; device; device = device->next) {
+		for (device = (*pacc)->devices; device; device = device->next) {
 			if (pci_filter_match(&filter_nb_link, device))
 				return device;
 		}
diff --git a/tools/power/cpupower/utils/helpers/sysfs.c b/tools/power/cpupower/utils/helpers/sysfs.c
index 0c534e79652b68..55e2466674c636 100644
--- a/tools/power/cpupower/utils/helpers/sysfs.c
+++ b/tools/power/cpupower/utils/helpers/sysfs.c
@@ -19,14 +19,14 @@
 unsigned int sysfs_read_file(const char *path, char *buf, size_t buflen)
 {
 	int fd;
-	size_t numread;
+	ssize_t numread;
 
-	if ( ( fd = open(path, O_RDONLY) ) == -1 )
+	fd = open(path, O_RDONLY);
+	if (fd == -1)
 		return 0;
 
 	numread = read(fd, buf, buflen - 1);
-	if ( numread < 1 )
-	{
+	if (numread < 1) {
 		close(fd);
 		return 0;
 	}
@@ -34,26 +34,26 @@ unsigned int sysfs_read_file(const char *path, char *buf, size_t buflen)
 	buf[numread] = '\0';
 	close(fd);
 
-	return numread;
+	return (unsigned int) numread;
 }
 
 static unsigned int sysfs_write_file(const char *path,
 				     const char *value, size_t len)
 {
 	int fd;
-	size_t numwrite;
+	ssize_t numwrite;
 
-	if ( ( fd = open(path, O_WRONLY) ) == -1 )
+	fd = open(path, O_WRONLY);
+	if (fd == -1)
 		return 0;
 
 	numwrite = write(fd, value, len);
-	if ( numwrite < 1 )
-	{
+	if (numwrite < 1) {
 		close(fd);
 		return 0;
 	}
 	close(fd);
-	return numwrite;
+	return (unsigned int) numwrite;
 }
 
 /* CPUidle idlestate specific /sys/devices/system/cpu/cpuX/cpuidle/ access */
@@ -69,17 +69,17 @@ unsigned int sysfs_idlestate_read_file(unsigned int cpu, unsigned int idlestate,
 {
 	char path[SYSFS_PATH_MAX];
 	int fd;
-	size_t numread;
+	ssize_t numread;
 
 	snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/cpuidle/state%u/%s",
 		 cpu, idlestate, fname);
 
-	if ( ( fd = open(path, O_RDONLY) ) == -1 )
+	fd = open(path, O_RDONLY);
+	if (fd == -1)
 		return 0;
 
 	numread = read(fd, buf, buflen - 1);
-	if ( numread < 1 )
-	{
+	if (numread < 1) {
 		close(fd);
 		return 0;
 	}
@@ -87,7 +87,7 @@ unsigned int sysfs_idlestate_read_file(unsigned int cpu, unsigned int idlestate,
 	buf[numread] = '\0';
 	close(fd);
 
-	return numread;
+	return (unsigned int) numread;
 }
 
 /* read access to files which contain one numeric value */
@@ -116,19 +116,18 @@ static unsigned long long sysfs_idlestate_get_one_value(unsigned int cpu,
 	char linebuf[MAX_LINE_LEN];
 	char *endp;
 
-	if ( which >= MAX_IDLESTATE_VALUE_FILES )
+	if (which >= MAX_IDLESTATE_VALUE_FILES)
 		return 0;
 
-	if ( ( len = sysfs_idlestate_read_file(cpu, idlestate,
-					    idlestate_value_files[which],
-					    linebuf, sizeof(linebuf))) == 0 )
-	{
+	len = sysfs_idlestate_read_file(cpu, idlestate,
+					idlestate_value_files[which],
+					linebuf, sizeof(linebuf));
+	if (len == 0)
 		return 0;
-	}
 
 	value = strtoull(linebuf, &endp, 0);
 
-	if ( endp == linebuf || errno == ERANGE )
+	if (endp == linebuf || errno == ERANGE)
 		return 0;
 
 	return value;
@@ -148,9 +147,9 @@ static const char *idlestate_string_files[MAX_IDLESTATE_STRING_FILES] = {
 };
 
 
-static char * sysfs_idlestate_get_one_string(unsigned int cpu,
-					  unsigned int idlestate,
-					  enum idlestate_string which)
+static char *sysfs_idlestate_get_one_string(unsigned int cpu,
+					unsigned int idlestate,
+					enum idlestate_string which)
 {
 	char linebuf[MAX_LINE_LEN];
 	char *result;
@@ -159,12 +158,14 @@ static char * sysfs_idlestate_get_one_string(unsigned int cpu,
 	if (which >= MAX_IDLESTATE_STRING_FILES)
 		return NULL;
 
-	if ( ( len = sysfs_idlestate_read_file(cpu, idlestate,
-					    idlestate_string_files[which],
-					    linebuf, sizeof(linebuf))) == 0 )
+	len = sysfs_idlestate_read_file(cpu, idlestate,
+					idlestate_string_files[which],
+					linebuf, sizeof(linebuf));
+	if (len == 0)
 		return NULL;
 
-	if ( ( result = strdup(linebuf) ) == NULL )
+	result = strdup(linebuf);
+	if (result == NULL)
 		return NULL;
 
 	if (result[strlen(result) - 1] == '\n')
@@ -173,27 +174,30 @@ static char * sysfs_idlestate_get_one_string(unsigned int cpu,
 	return result;
 }
 
-unsigned long sysfs_get_idlestate_latency(unsigned int cpu, unsigned int idlestate)
+unsigned long sysfs_get_idlestate_latency(unsigned int cpu,
+					unsigned int idlestate)
 {
 	return sysfs_idlestate_get_one_value(cpu, idlestate, IDLESTATE_LATENCY);
 }
 
-unsigned long sysfs_get_idlestate_usage(unsigned int cpu, unsigned int idlestate)
+unsigned long sysfs_get_idlestate_usage(unsigned int cpu,
+					unsigned int idlestate)
 {
 	return sysfs_idlestate_get_one_value(cpu, idlestate, IDLESTATE_USAGE);
 }
 
-unsigned long long sysfs_get_idlestate_time(unsigned int cpu, unsigned int idlestate)
+unsigned long long sysfs_get_idlestate_time(unsigned int cpu,
+					unsigned int idlestate)
 {
 	return sysfs_idlestate_get_one_value(cpu, idlestate, IDLESTATE_TIME);
 }
 
-char * sysfs_get_idlestate_name(unsigned int cpu, unsigned int idlestate)
+char *sysfs_get_idlestate_name(unsigned int cpu, unsigned int idlestate)
 {
 	return sysfs_idlestate_get_one_string(cpu, idlestate, IDLESTATE_NAME);
 }
 
-char * sysfs_get_idlestate_desc(unsigned int cpu, unsigned int idlestate)
+char *sysfs_get_idlestate_desc(unsigned int cpu, unsigned int idlestate)
 {
 	return sysfs_idlestate_get_one_string(cpu, idlestate, IDLESTATE_DESC);
 }
@@ -211,14 +215,14 @@ int sysfs_get_idlestate_count(unsigned int cpu)
 
 
 	snprintf(file, SYSFS_PATH_MAX, PATH_TO_CPU "cpuidle");
-	if ( stat(file, &statbuf) != 0 || !S_ISDIR(statbuf.st_mode))
+	if (stat(file, &statbuf) != 0 || !S_ISDIR(statbuf.st_mode))
 		return -ENODEV;
 
 	snprintf(file, SYSFS_PATH_MAX, PATH_TO_CPU "cpu%u/cpuidle/state0", cpu);
-	if ( stat(file, &statbuf) != 0 || !S_ISDIR(statbuf.st_mode))
+	if (stat(file, &statbuf) != 0 || !S_ISDIR(statbuf.st_mode))
 		return 0;
 
-	while(stat(file, &statbuf) == 0 && S_ISDIR(statbuf.st_mode)) {
+	while (stat(file, &statbuf) == 0 && S_ISDIR(statbuf.st_mode)) {
 		snprintf(file, SYSFS_PATH_MAX, PATH_TO_CPU
 			 "cpu%u/cpuidle/state%d", cpu, idlestates);
 		idlestates++;
@@ -261,7 +265,7 @@ static const char *cpuidle_string_files[MAX_CPUIDLE_STRING_FILES] = {
 };
 
 
-static char * sysfs_cpuidle_get_one_string(enum cpuidle_string which)
+static char *sysfs_cpuidle_get_one_string(enum cpuidle_string which)
 {
 	char linebuf[MAX_LINE_LEN];
 	char *result;
@@ -270,11 +274,13 @@ static char * sysfs_cpuidle_get_one_string(enum cpuidle_string which)
 	if (which >= MAX_CPUIDLE_STRING_FILES)
 		return NULL;
 
-	if ( ( len = sysfs_cpuidle_read_file(cpuidle_string_files[which],
-					    linebuf, sizeof(linebuf))) == 0 )
+	len = sysfs_cpuidle_read_file(cpuidle_string_files[which],
+				linebuf, sizeof(linebuf));
+	if (len == 0)
 		return NULL;
 
-	if ( ( result = strdup(linebuf) ) == NULL )
+	result = strdup(linebuf);
+	if (result == NULL)
 		return NULL;
 
 	if (result[strlen(result) - 1] == '\n')
@@ -283,7 +289,7 @@ static char * sysfs_cpuidle_get_one_string(enum cpuidle_string which)
 	return result;
 }
 
-char * sysfs_get_cpuidle_governor(void)
+char *sysfs_get_cpuidle_governor(void)
 {
 	char *tmp = sysfs_cpuidle_get_one_string(CPUIDLE_GOVERNOR_RO);
 	if (!tmp)
@@ -292,7 +298,7 @@ char * sysfs_get_cpuidle_governor(void)
 		return tmp;
 }
 
-char * sysfs_get_cpuidle_driver(void)
+char *sysfs_get_cpuidle_driver(void)
 {
 	return sysfs_cpuidle_get_one_string(CPUIDLE_DRIVER);
 }
@@ -304,9 +310,9 @@ char * sysfs_get_cpuidle_driver(void)
  *
  * Returns negative value on failure
  */
-int sysfs_get_sched(const char* smt_mc)
+int sysfs_get_sched(const char *smt_mc)
 {
- 	unsigned long value;
+	unsigned long value;
 	char linebuf[MAX_LINE_LEN];
 	char *endp;
 	char path[SYSFS_PATH_MAX];
@@ -314,11 +320,12 @@ int sysfs_get_sched(const char* smt_mc)
 	if (strcmp("mc", smt_mc) && strcmp("smt", smt_mc))
 		return -EINVAL;
 
-	snprintf(path, sizeof(path), PATH_TO_CPU "sched_%s_power_savings", smt_mc);
-	if (sysfs_read_file(path, linebuf, MAX_LINE_LEN) == 0 )
+	snprintf(path, sizeof(path),
+		PATH_TO_CPU "sched_%s_power_savings", smt_mc);
+	if (sysfs_read_file(path, linebuf, MAX_LINE_LEN) == 0)
 		return -1;
 	value = strtoul(linebuf, &endp, 0);
-	if ( endp == linebuf || errno == ERANGE )
+	if (endp == linebuf || errno == ERANGE)
 		return -1;
 	return value;
 }
@@ -329,7 +336,7 @@ int sysfs_get_sched(const char* smt_mc)
  *
  * Returns negative value on failure
  */
-int sysfs_set_sched(const char* smt_mc, int val)
+int sysfs_set_sched(const char *smt_mc, int val)
 {
 	char linebuf[MAX_LINE_LEN];
 	char path[SYSFS_PATH_MAX];
@@ -338,13 +345,14 @@ int sysfs_set_sched(const char* smt_mc, int val)
 	if (strcmp("mc", smt_mc) && strcmp("smt", smt_mc))
 		return -EINVAL;
 
-	snprintf(path, sizeof(path), PATH_TO_CPU "sched_%s_power_savings", smt_mc);
+	snprintf(path, sizeof(path),
+		PATH_TO_CPU "sched_%s_power_savings", smt_mc);
 	sprintf(linebuf, "%d", val);
 
-	if ( stat(path, &statbuf) != 0 )
+	if (stat(path, &statbuf) != 0)
 		return -ENODEV;
 
-	if (sysfs_write_file(path, linebuf, MAX_LINE_LEN) == 0 )
+	if (sysfs_write_file(path, linebuf, MAX_LINE_LEN) == 0)
 		return -1;
 	return 0;
 }
diff --git a/tools/power/cpupower/utils/helpers/sysfs.h b/tools/power/cpupower/utils/helpers/sysfs.h
index 5d02d2fc70e111..f9373e0906377d 100644
--- a/tools/power/cpupower/utils/helpers/sysfs.h
+++ b/tools/power/cpupower/utils/helpers/sysfs.h
@@ -7,17 +7,22 @@
 
 extern unsigned int sysfs_read_file(const char *path, char *buf, size_t buflen);
 
-extern unsigned long sysfs_get_idlestate_latency(unsigned int cpu, unsigned int idlestate);
-extern unsigned long sysfs_get_idlestate_usage(unsigned int cpu, unsigned int idlestate);
-extern unsigned long long sysfs_get_idlestate_time(unsigned int cpu, unsigned int idlestate);
-extern char * sysfs_get_idlestate_name(unsigned int cpu, unsigned int idlestate);
-extern char * sysfs_get_idlestate_desc(unsigned int cpu, unsigned int idlestate);
+extern unsigned long sysfs_get_idlestate_latency(unsigned int cpu,
+						unsigned int idlestate);
+extern unsigned long sysfs_get_idlestate_usage(unsigned int cpu,
+					unsigned int idlestate);
+extern unsigned long long sysfs_get_idlestate_time(unsigned int cpu,
+						unsigned int idlestate);
+extern char *sysfs_get_idlestate_name(unsigned int cpu,
+				unsigned int idlestate);
+extern char *sysfs_get_idlestate_desc(unsigned int cpu,
+				unsigned int idlestate);
 extern int sysfs_get_idlestate_count(unsigned int cpu);
 
-extern char * sysfs_get_cpuidle_governor(void);
-extern char * sysfs_get_cpuidle_driver(void);
+extern char *sysfs_get_cpuidle_governor(void);
+extern char *sysfs_get_cpuidle_driver(void);
 
-extern int sysfs_get_sched(const char* smt_mc);
-extern int sysfs_set_sched(const char* smt_mc, int val);
+extern int sysfs_get_sched(const char *smt_mc);
+extern int sysfs_set_sched(const char *smt_mc, int val);
 
 #endif /* __CPUPOWER_HELPERS_SYSFS_H__ */
diff --git a/tools/power/cpupower/utils/helpers/topology.c b/tools/power/cpupower/utils/helpers/topology.c
index 5ad842b956bb4b..385ee5c7570cc6 100644
--- a/tools/power/cpupower/utils/helpers/topology.c
+++ b/tools/power/cpupower/utils/helpers/topology.c
@@ -22,17 +22,17 @@
 /* returns -1 on failure, 0 on success */
 int sysfs_topology_read_file(unsigned int cpu, const char *fname)
 {
- 	unsigned long value;
+	unsigned long value;
 	char linebuf[MAX_LINE_LEN];
 	char *endp;
 	char path[SYSFS_PATH_MAX];
 
 	snprintf(path, sizeof(path), PATH_TO_CPU "cpu%u/topology/%s",
 			 cpu, fname);
-	if (sysfs_read_file(path, linebuf, MAX_LINE_LEN) == 0 )
+	if (sysfs_read_file(path, linebuf, MAX_LINE_LEN) == 0)
 		return -1;
 	value = strtoul(linebuf, &endp, 0);
-	if ( endp == linebuf || errno == ERANGE )
+	if (endp == linebuf || errno == ERANGE)
 		return -1;
 	return value;
 }
-- 
GitLab