diff --git a/pre_commit_hooks/util.py b/pre_commit_hooks/util.py
index 3b960e3..e04b015 100644
--- a/pre_commit_hooks/util.py
+++ b/pre_commit_hooks/util.py
@@ -1,9 +1,6 @@
-from __future__ import absolute_import
-from __future__ import print_function
-from __future__ import unicode_literals
-
 import subprocess
 from typing import Any
+from typing import Optional
 from typing import Set
 
 
@@ -11,18 +8,17 @@
     pass
 
 
-def added_files():  # type: () -> Set[str]
+def added_files() -> Set[str]:
     cmd = ('git', 'diff', '--staged', '--name-only', '--diff-filter=A')
     return set(cmd_output(*cmd).splitlines())
 
 
-def cmd_output(*cmd, **kwargs):  # type: (*str, **Any) -> str
-    retcode = kwargs.pop('retcode', 0)
+def cmd_output(*cmd: str, retcode: Optional[int] = 0, **kwargs: Any) -> str:
     kwargs.setdefault('stdout', subprocess.PIPE)
     kwargs.setdefault('stderr', subprocess.PIPE)
     proc = subprocess.Popen(cmd, **kwargs)
     stdout, stderr = proc.communicate()
-    stdout = stdout.decode('UTF-8')
+    stdout = stdout.decode()
     if retcode is not None and proc.returncode != retcode:
         raise CalledProcessError(cmd, retcode, proc.returncode, stdout, stderr)
     return stdout
