diff --git a/grep-2.15-help-align.patch b/grep-2.15-help-align.patch
deleted file mode 100644
index e29c60e..0000000
--- a/grep-2.15-help-align.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/src/main.c b/src/main.c
-index 930c429..dd46735 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -1588,16 +1588,19 @@ Output control:\n\
-   -D, --devices=ACTION      how to handle devices, FIFOs and sockets;\n\
-                             ACTION is 'read' or 'skip'\n\
-   -r, --recursive           like --directories=recurse\n\
--  -R, --dereference-recursive  likewise, but follow all symlinks\n\
-+  -R, --dereference-recursive\n\
-+                            likewise, but follow all symlinks\n\
- "));
-       printf (_("\
--      --include=FILE_PATTERN  search only files that match FILE_PATTERN\n\
--      --exclude=FILE_PATTERN  skip files and directories matching FILE_PATTERN\n\
-+      --include=FILE_PATTERN\n\
-+                            search only files that match FILE_PATTERN\n\
-+      --exclude=FILE_PATTERN\n\
-+                            skip files and directories matching FILE_PATTERN\n\
-       --exclude-from=FILE   skip files matching any file pattern from FILE\n\
--      --exclude-dir=PATTERN  directories that match PATTERN will be skipped.\n\
-+      --exclude-dir=PATTERN directories that match PATTERN will be skipped.\n\
- "));
-       printf (_("\
--  -L, --files-without-match  print only names of FILEs containing no match\n\
-+  -L, --files-without-match print only names of FILEs containing no match\n\
-   -l, --files-with-matches  print only names of FILEs containing matches\n\
-   -c, --count               print only a count of matching lines per FILE\n\
-   -T, --initial-tab         make tabs line up (if needed)\n\
diff --git a/grep-2.15-man-fix-gs.patch b/grep-2.15-man-fix-gs.patch
deleted file mode 100644
index e416cb7..0000000
--- a/grep-2.15-man-fix-gs.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-diff --git a/doc/grep.in.1 b/doc/grep.in.1
-index 3d65610..07e2d17 100644
---- a/doc/grep.in.1
-+++ b/doc/grep.in.1
-@@ -377,7 +377,7 @@ Print
- .I NUM
- lines of trailing context after matching lines.
- Places a line containing a group separator
--.RB ( \-\^\- )
-+.RB "(described under " \-\^\-group\-separator )
- between contiguous groups of matches.
- With the
- .B \-o
-@@ -390,7 +390,7 @@ Print
- .I NUM
- lines of leading context before matching lines.
- Places a line containing a group separator
--.RB ( \-\^\- )
-+.RB "(described under " \-\^\-group\-separator )
- between contiguous groups of matches.
- With the
- .B \-o
-@@ -403,13 +403,24 @@ Print
- .I NUM
- lines of output context.
- Places a line containing a group separator
--.RB ( \-\^\- )
-+.RB "(described under " \-\^\-group\-separator )
- between contiguous groups of matches.
- With the
- .B \-o
- or
- .B \-\^\-only\-matching
- option, this has no effect and a warning is given.
-+.TP
-+.BI \-\^\-group\-separator= SEP
-+Use
-+.I SEP
-+as a group separator. By default
-+.I SEP
-+is double hyphen
-+.RB ( \-\^\- ).
-+.TP
-+.B \-\^\-no\-group-separator
-+Use empty string as a group separator.
- .SS "File and Directory Selection"
- .TP
- .BR \-a ", " \-\^\-text
-diff --git a/src/main.c b/src/main.c
-index d9c7759..930c429 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -1611,6 +1611,8 @@ Context control:\n\
- "));
-       printf (_("\
-   -NUM                      same as --context=NUM\n\
-+      --group-separator=SEP use SEP as a group separator\n\
-+      --no-group-separator  use empty string as a group separator\n\
-       --color[=WHEN],\n\
-       --colour[=WHEN]       use markers to highlight the matching strings;\n\
-                             WHEN is 'always', 'never', or 'auto'\n\
diff --git a/grep-2.16-help-align.patch b/grep-2.16-help-align.patch
new file mode 100644
index 0000000..d94d46b
--- /dev/null
+++ b/grep-2.16-help-align.patch
@@ -0,0 +1,29 @@
+diff --git a/src/main.c b/src/main.c
+index 7c1bd60..6b7a932 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -1598,16 +1598,19 @@ Output control:\n\
+   -D, --devices=ACTION      how to handle devices, FIFOs and sockets;\n\
+                             ACTION is 'read' or 'skip'\n\
+   -r, --recursive           like --directories=recurse\n\
+-  -R, --dereference-recursive  likewise, but follow all symlinks\n\
++  -R, --dereference-recursive\n\
++                            likewise, but follow all symlinks\n\
+ "));
+       printf (_("\
+-      --include=FILE_PATTERN  search only files that match FILE_PATTERN\n\
+-      --exclude=FILE_PATTERN  skip files and directories matching FILE_PATTERN\n\
++      --include=FILE_PATTERN\n\
++                            search only files that match FILE_PATTERN\n\
++      --exclude=FILE_PATTERN\n\
++                            skip files and directories matching FILE_PATTERN\n\
+       --exclude-from=FILE   skip files matching any file pattern from FILE\n\
+-      --exclude-dir=PATTERN  directories that match PATTERN will be skipped.\n\
++      --exclude-dir=PATTERN directories that match PATTERN will be skipped.\n\
+ "));
+       printf (_("\
+-  -L, --files-without-match  print only names of FILEs containing no match\n\
++  -L, --files-without-match print only names of FILEs containing no match\n\
+   -l, --files-with-matches  print only names of FILEs containing matches\n\
+   -c, --count               print only a count of matching lines per FILE\n\
+   -T, --initial-tab         make tabs line up (if needed)\n\
diff --git a/grep-2.16-man-fix-gs.patch b/grep-2.16-man-fix-gs.patch
new file mode 100644
index 0000000..2352919
--- /dev/null
+++ b/grep-2.16-man-fix-gs.patch
@@ -0,0 +1,61 @@
+diff --git a/doc/grep.in.1 b/doc/grep.in.1
+index d91de8c..9e8d8d2 100644
+--- a/doc/grep.in.1
++++ b/doc/grep.in.1
+@@ -377,7 +377,7 @@ Print
+ .I NUM
+ lines of trailing context after matching lines.
+ Places a line containing a group separator
+-.RB ( \-\^\- )
++.RB "(described under " \-\^\-group\-separator )
+ between contiguous groups of matches.
+ With the
+ .B \-o
+@@ -390,7 +390,7 @@ Print
+ .I NUM
+ lines of leading context before matching lines.
+ Places a line containing a group separator
+-.RB ( \-\^\- )
++.RB "(described under " \-\^\-group\-separator )
+ between contiguous groups of matches.
+ With the
+ .B \-o
+@@ -403,13 +403,24 @@ Print
+ .I NUM
+ lines of output context.
+ Places a line containing a group separator
+-.RB ( \-\^\- )
++.RB "(described under " \-\^\-group\-separator )
+ between contiguous groups of matches.
+ With the
+ .B \-o
+ or
+ .B \-\^\-only\-matching
+ option, this has no effect and a warning is given.
++.TP
++.BI \-\^\-group\-separator= SEP
++Use
++.I SEP
++as a group separator. By default
++.I SEP
++is double hyphen
++.RB ( \-\^\- ).
++.TP
++.B \-\^\-no\-group-separator
++Use empty string as a group separator.
+ .SS "File and Directory Selection"
+ .TP
+ .BR \-a ", " \-\^\-text
+diff --git a/src/main.c b/src/main.c
+index 44090be..7c1bd60 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -1621,6 +1621,8 @@ Context control:\n\
+ "));
+       printf (_("\
+   -NUM                      same as --context=NUM\n\
++      --group-separator=SEP use SEP as a group separator\n\
++      --no-group-separator  use empty string as a group separator\n\
+       --color[=WHEN],\n\
+       --colour[=WHEN]       use markers to highlight the matching strings;\n\
+                             WHEN is 'always', 'never', or 'auto'\n\
diff --git a/grep.spec b/grep.spec
index 391ed0e..90a0fab 100644
--- a/grep.spec
+++ b/grep.spec
@@ -2,8 +2,8 @@
 
 Summary: Pattern matching utilities
 Name: grep
-Version: 2.15
-Release: 2%{?dist}
+Version: 2.16
+Release: 1%{?dist}
 License: GPLv3+
 Group: Applications/Text
 Source: ftp://ftp.gnu.org/pub/gnu/grep/grep-%{version}.tar.xz
@@ -11,9 +11,9 @@ Source1: colorgrep.sh
 Source2: colorgrep.csh
 Source3: GREP_COLORS
 # upstream ticket 39444
-Patch0: grep-2.15-man-fix-gs.patch
+Patch0: grep-2.16-man-fix-gs.patch
 # upstream ticket 39445
-Patch1: grep-2.15-help-align.patch
+Patch1: grep-2.16-help-align.patch
 URL: http://www.gnu.org/software/grep/
 Requires(post): /sbin/install-info
 Requires(preun): /sbin/install-info
@@ -85,6 +85,11 @@ fi
 %{_mandir}/*/*
 
 %changelog
+* Thu Jan  2 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 2.16-1
+- New version
+  Resolves: rhbz#1047813
+- De-fuzzified patches
+
 * Tue Nov 26 2013 Jaroslav Škarvada <jskarvad@redhat.com> - 2.15-2
 - Removed coloring restriction for interactive shells
   Resolves: rhbz#1034631
diff --git a/sources b/sources
index 43e7eba..dc6947d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-8cab8ca52bcae735af40278423c7c942  grep-2.15.tar.xz
+502350a6c8f7c2b12ee58829e760b44d  grep-2.16.tar.xz