[PATCH 2/3] kconfig: regenerate bison parser

2013-09-04 Thread Yann E. MORIN
From: "Yann E. MORIN" 

Regenerate bison parser after changes made in:
b1a4fe3: kconfig: do not special-case 'MODULES' symbol

Signed-off-by: "Yann E. MORIN" 
Cc: Sam Ravnborg 
Cc: Michal Marek 
---
 scripts/kconfig/zconf.tab.c_shipped | 562 +++-
 1 file changed, 298 insertions(+), 264 deletions(-)

diff --git a/scripts/kconfig/zconf.tab.c_shipped 
b/scripts/kconfig/zconf.tab.c_shipped
index f636141..25ae16a 100644
--- a/scripts/kconfig/zconf.tab.c_shipped
+++ b/scripts/kconfig/zconf.tab.c_shipped
@@ -1,9 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.4.3.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
-/* Skeleton implementation for Bison's Yacc-like parsers in C
+/* Bison implementation for Yacc-like parsers in C

-  Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-   2009, 2010 Free Software Foundation, Inc.
+  Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -45,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "2.4.3"
+#define YYBISON_VERSION "2.5"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
@@ -302,11 +301,11 @@ YYID (yyi)
 #define alloca _alloca
 #   else
 #define YYSTACK_ALLOC alloca
-#if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || 
defined __C99__FUNC__ \
+#if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 # include  /* INFRINGES ON USER NAME SPACE */
-# ifndef _STDLIB_H
-#  define _STDLIB_H 1
+# ifndef EXIT_SUCCESS
+#  define EXIT_SUCCESS 0
 # endif
 #endif
 #   endif
@@ -329,24 +328,24 @@ YYID (yyi)
 #  ifndef YYSTACK_ALLOC_MAXIMUM
 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
 #  endif
-#  if (defined __cplusplus && ! defined _STDLIB_H \
+#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
&& ! ((defined YYMALLOC || defined malloc) \
 && (defined YYFREE || defined free)))
 #   include  /* INFRINGES ON USER NAME SPACE */
-#   ifndef _STDLIB_H
-#define _STDLIB_H 1
+#   ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
 #   endif
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
@@ -375,23 +374,7 @@ union yyalloc
  ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
   + YYSTACK_GAP_MAXIMUM)
 
-/* Copy COUNT objects from FROM to TO.  The source and destination do
-   not overlap.  */
-# ifndef YYCOPY
-#  if defined __GNUC__ && 1 < __GNUC__
-#   define YYCOPY(To, From, Count) \
-  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count) \
-  do   \
-   {   \
- YYSIZE_T yyi; \
- for (yyi = 0; yyi < (Count); yyi++)   \
-   (To)[yyi] = (From)[yyi];\
-   }   \
-  while (YYID (0))
-#  endif
-# endif
+# define YYCOPY_NEEDED 1
 
 /* Relocate STACK from its old location to the new one.  The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
@@ -411,6 +394,26 @@ union yyalloc
 
 #endif
 
+#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
+/* Copy COUNT objects from FROM to TO.  The source and destination do
+   not overlap.  */
+# ifndef YYCOPY
+#  if defined __GNUC__ && 1 < __GNUC__
+#   define YYCOPY(To, From, Count) \
+  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#  else
+#   define YYCOPY(To, From, Count) \
+  do   \
+   {   \
+ YYSIZE_T yyi; \
+ for (yyi = 0; yyi < (Count); yyi++)   \
+   (To)[yyi] = (From)[yyi];\
+   }   \
+  while (YYID (0))
+#  endif
+# endif
+#endif /* !YYCOPY_NEEDED */
+
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  11
 /* YYLAST -- Last index in YYTABLE.  */
@@ -529,18 +532,18 @@ static const yytype_int8 yyrhs[] =

[PATCH 2/3] kconfig: regenerate bison parser

2013-09-04 Thread Yann E. MORIN
From: Yann E. MORIN yann.morin.1...@free.fr

Regenerate bison parser after changes made in:
b1a4fe3: kconfig: do not special-case 'MODULES' symbol

Signed-off-by: Yann E. MORIN yann.morin.1...@free.fr
Cc: Sam Ravnborg s...@ravnborg.org
Cc: Michal Marek mma...@suse.cz
---
 scripts/kconfig/zconf.tab.c_shipped | 562 +++-
 1 file changed, 298 insertions(+), 264 deletions(-)

diff --git a/scripts/kconfig/zconf.tab.c_shipped 
b/scripts/kconfig/zconf.tab.c_shipped
index f636141..25ae16a 100644
--- a/scripts/kconfig/zconf.tab.c_shipped
+++ b/scripts/kconfig/zconf.tab.c_shipped
@@ -1,9 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.4.3.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
-/* Skeleton implementation for Bison's Yacc-like parsers in C
+/* Bison implementation for Yacc-like parsers in C

-  Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-   2009, 2010 Free Software Foundation, Inc.
+  Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -45,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION 2.4.3
+#define YYBISON_VERSION 2.5
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME yacc.c
@@ -302,11 +301,11 @@ YYID (yyi)
 #define alloca _alloca
 #   else
 #define YYSTACK_ALLOC alloca
-#if ! defined _ALLOCA_H  ! defined _STDLIB_H  (defined __STDC__ || 
defined __C99__FUNC__ \
+#if ! defined _ALLOCA_H  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 # include stdlib.h /* INFRINGES ON USER NAME SPACE */
-# ifndef _STDLIB_H
-#  define _STDLIB_H 1
+# ifndef EXIT_SUCCESS
+#  define EXIT_SUCCESS 0
 # endif
 #endif
 #   endif
@@ -329,24 +328,24 @@ YYID (yyi)
 #  ifndef YYSTACK_ALLOC_MAXIMUM
 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
 #  endif
-#  if (defined __cplusplus  ! defined _STDLIB_H \
+#  if (defined __cplusplus  ! defined EXIT_SUCCESS \
 ! ((defined YYMALLOC || defined malloc) \
  (defined YYFREE || defined free)))
 #   include stdlib.h /* INFRINGES ON USER NAME SPACE */
-#   ifndef _STDLIB_H
-#define _STDLIB_H 1
+#   ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
 #   endif
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc  ! defined _STDLIB_H  (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined malloc  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free  ! defined _STDLIB_H  (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined free  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
@@ -375,23 +374,7 @@ union yyalloc
  ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
   + YYSTACK_GAP_MAXIMUM)
 
-/* Copy COUNT objects from FROM to TO.  The source and destination do
-   not overlap.  */
-# ifndef YYCOPY
-#  if defined __GNUC__  1  __GNUC__
-#   define YYCOPY(To, From, Count) \
-  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count) \
-  do   \
-   {   \
- YYSIZE_T yyi; \
- for (yyi = 0; yyi  (Count); yyi++)   \
-   (To)[yyi] = (From)[yyi];\
-   }   \
-  while (YYID (0))
-#  endif
-# endif
+# define YYCOPY_NEEDED 1
 
 /* Relocate STACK from its old location to the new one.  The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
@@ -411,6 +394,26 @@ union yyalloc
 
 #endif
 
+#if defined YYCOPY_NEEDED  YYCOPY_NEEDED
+/* Copy COUNT objects from FROM to TO.  The source and destination do
+   not overlap.  */
+# ifndef YYCOPY
+#  if defined __GNUC__  1  __GNUC__
+#   define YYCOPY(To, From, Count) \
+  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#  else
+#   define YYCOPY(To, From, Count) \
+  do   \
+   {   \
+ YYSIZE_T yyi; \
+ for (yyi = 0; yyi  (Count); yyi++)   \
+   (To)[yyi] = (From)[yyi];\
+   }   \
+  while (YYID (0))
+#  endif
+# endif
+#endif /* !YYCOPY_NEEDED */
+
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  11
 /* YYLAST -- Last index in YYTABLE.  */
@@ -529,18 

[PATCH 2/3] kconfig: regenerate bison parser

2013-09-03 Thread Yann E. MORIN
From: "Yann E. MORIN" 

Regenerate bison parser after changes made in:
b1a4fe3: kconfig: do not special-case 'MODULES' symbol

Signed-off-by: "Yann E. MORIN" 
Cc: Sam Ravnborg 
Cc: Michal Marek 
---
 scripts/kconfig/zconf.tab.c_shipped | 562 +++-
 1 file changed, 298 insertions(+), 264 deletions(-)

diff --git a/scripts/kconfig/zconf.tab.c_shipped 
b/scripts/kconfig/zconf.tab.c_shipped
index f636141..25ae16a 100644
--- a/scripts/kconfig/zconf.tab.c_shipped
+++ b/scripts/kconfig/zconf.tab.c_shipped
@@ -1,9 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.4.3.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
-/* Skeleton implementation for Bison's Yacc-like parsers in C
+/* Bison implementation for Yacc-like parsers in C

-  Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-   2009, 2010 Free Software Foundation, Inc.
+  Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -45,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "2.4.3"
+#define YYBISON_VERSION "2.5"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
@@ -302,11 +301,11 @@ YYID (yyi)
 #define alloca _alloca
 #   else
 #define YYSTACK_ALLOC alloca
-#if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || 
defined __C99__FUNC__ \
+#if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 # include  /* INFRINGES ON USER NAME SPACE */
-# ifndef _STDLIB_H
-#  define _STDLIB_H 1
+# ifndef EXIT_SUCCESS
+#  define EXIT_SUCCESS 0
 # endif
 #endif
 #   endif
@@ -329,24 +328,24 @@ YYID (yyi)
 #  ifndef YYSTACK_ALLOC_MAXIMUM
 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
 #  endif
-#  if (defined __cplusplus && ! defined _STDLIB_H \
+#  if (defined __cplusplus && ! defined EXIT_SUCCESS \
&& ! ((defined YYMALLOC || defined malloc) \
 && (defined YYFREE || defined free)))
 #   include  /* INFRINGES ON USER NAME SPACE */
-#   ifndef _STDLIB_H
-#define _STDLIB_H 1
+#   ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
 #   endif
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
@@ -375,23 +374,7 @@ union yyalloc
  ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
   + YYSTACK_GAP_MAXIMUM)
 
-/* Copy COUNT objects from FROM to TO.  The source and destination do
-   not overlap.  */
-# ifndef YYCOPY
-#  if defined __GNUC__ && 1 < __GNUC__
-#   define YYCOPY(To, From, Count) \
-  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count) \
-  do   \
-   {   \
- YYSIZE_T yyi; \
- for (yyi = 0; yyi < (Count); yyi++)   \
-   (To)[yyi] = (From)[yyi];\
-   }   \
-  while (YYID (0))
-#  endif
-# endif
+# define YYCOPY_NEEDED 1
 
 /* Relocate STACK from its old location to the new one.  The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
@@ -411,6 +394,26 @@ union yyalloc
 
 #endif
 
+#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
+/* Copy COUNT objects from FROM to TO.  The source and destination do
+   not overlap.  */
+# ifndef YYCOPY
+#  if defined __GNUC__ && 1 < __GNUC__
+#   define YYCOPY(To, From, Count) \
+  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#  else
+#   define YYCOPY(To, From, Count) \
+  do   \
+   {   \
+ YYSIZE_T yyi; \
+ for (yyi = 0; yyi < (Count); yyi++)   \
+   (To)[yyi] = (From)[yyi];\
+   }   \
+  while (YYID (0))
+#  endif
+# endif
+#endif /* !YYCOPY_NEEDED */
+
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  11
 /* YYLAST -- Last index in YYTABLE.  */
@@ -529,18 +532,18 @@ static const yytype_int8 yyrhs[] =

[PATCH 2/3] kconfig: regenerate bison parser

2013-09-03 Thread Yann E. MORIN
From: Yann E. MORIN yann.morin.1...@free.fr

Regenerate bison parser after changes made in:
b1a4fe3: kconfig: do not special-case 'MODULES' symbol

Signed-off-by: Yann E. MORIN yann.morin.1...@free.fr
Cc: Sam Ravnborg s...@ravnborg.org
Cc: Michal Marek mma...@suse.cz
---
 scripts/kconfig/zconf.tab.c_shipped | 562 +++-
 1 file changed, 298 insertions(+), 264 deletions(-)

diff --git a/scripts/kconfig/zconf.tab.c_shipped 
b/scripts/kconfig/zconf.tab.c_shipped
index f636141..25ae16a 100644
--- a/scripts/kconfig/zconf.tab.c_shipped
+++ b/scripts/kconfig/zconf.tab.c_shipped
@@ -1,9 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.4.3.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
-/* Skeleton implementation for Bison's Yacc-like parsers in C
+/* Bison implementation for Yacc-like parsers in C

-  Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-   2009, 2010 Free Software Foundation, Inc.
+  Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -45,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION 2.4.3
+#define YYBISON_VERSION 2.5
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME yacc.c
@@ -302,11 +301,11 @@ YYID (yyi)
 #define alloca _alloca
 #   else
 #define YYSTACK_ALLOC alloca
-#if ! defined _ALLOCA_H  ! defined _STDLIB_H  (defined __STDC__ || 
defined __C99__FUNC__ \
+#if ! defined _ALLOCA_H  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 # include stdlib.h /* INFRINGES ON USER NAME SPACE */
-# ifndef _STDLIB_H
-#  define _STDLIB_H 1
+# ifndef EXIT_SUCCESS
+#  define EXIT_SUCCESS 0
 # endif
 #endif
 #   endif
@@ -329,24 +328,24 @@ YYID (yyi)
 #  ifndef YYSTACK_ALLOC_MAXIMUM
 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
 #  endif
-#  if (defined __cplusplus  ! defined _STDLIB_H \
+#  if (defined __cplusplus  ! defined EXIT_SUCCESS \
 ! ((defined YYMALLOC || defined malloc) \
  (defined YYFREE || defined free)))
 #   include stdlib.h /* INFRINGES ON USER NAME SPACE */
-#   ifndef _STDLIB_H
-#define _STDLIB_H 1
+#   ifndef EXIT_SUCCESS
+#define EXIT_SUCCESS 0
 #   endif
 #  endif
 #  ifndef YYMALLOC
 #   define YYMALLOC malloc
-#   if ! defined malloc  ! defined _STDLIB_H  (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined malloc  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
 #   endif
 #  endif
 #  ifndef YYFREE
 #   define YYFREE free
-#   if ! defined free  ! defined _STDLIB_H  (defined __STDC__ || defined 
__C99__FUNC__ \
+#   if ! defined free  ! defined EXIT_SUCCESS  (defined __STDC__ || 
defined __C99__FUNC__ \
  || defined __cplusplus || defined _MSC_VER)
 void free (void *); /* INFRINGES ON USER NAME SPACE */
 #   endif
@@ -375,23 +374,7 @@ union yyalloc
  ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
   + YYSTACK_GAP_MAXIMUM)
 
-/* Copy COUNT objects from FROM to TO.  The source and destination do
-   not overlap.  */
-# ifndef YYCOPY
-#  if defined __GNUC__  1  __GNUC__
-#   define YYCOPY(To, From, Count) \
-  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count) \
-  do   \
-   {   \
- YYSIZE_T yyi; \
- for (yyi = 0; yyi  (Count); yyi++)   \
-   (To)[yyi] = (From)[yyi];\
-   }   \
-  while (YYID (0))
-#  endif
-# endif
+# define YYCOPY_NEEDED 1
 
 /* Relocate STACK from its old location to the new one.  The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
@@ -411,6 +394,26 @@ union yyalloc
 
 #endif
 
+#if defined YYCOPY_NEEDED  YYCOPY_NEEDED
+/* Copy COUNT objects from FROM to TO.  The source and destination do
+   not overlap.  */
+# ifndef YYCOPY
+#  if defined __GNUC__  1  __GNUC__
+#   define YYCOPY(To, From, Count) \
+  __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#  else
+#   define YYCOPY(To, From, Count) \
+  do   \
+   {   \
+ YYSIZE_T yyi; \
+ for (yyi = 0; yyi  (Count); yyi++)   \
+   (To)[yyi] = (From)[yyi];\
+   }   \
+  while (YYID (0))
+#  endif
+# endif
+#endif /* !YYCOPY_NEEDED */
+
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  11
 /* YYLAST -- Last index in YYTABLE.  */
@@ -529,18