diff --git a/FPE/FF1.hs b/FPE/FF1.hs
--- a/FPE/FF1.hs
+++ b/FPE/FF1.hs
@@ -19,7 +19,7 @@
 --  Defined in FF1 step 3 using (redundant) double ceiling.
 bytesFor :: Int -> Int -> Int
 bytesFor radix len =
-   integerLog2 ((fromIntegral radix ^ len) - 1) `div` 8 + 1
+   integerLog2' ((fromIntegral radix ^ len) - 1) `div` 8 + 1
 
 xorBytes :: S.ByteString -> S.ByteString -> S.ByteString
 xorBytes a b = S.pack $ S.zipWith xor a b
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,3 +1,6 @@
+[![Hackage](https://img.shields.io/hackage/v/fpe.svg)](https://hackage.haskell.org/package/fpe)
+![Build status](https://github.com/galenhuntington/fpe/actions/workflows/haskell.yml/badge.svg)
+
 _Format-preserving encryption_ encrypts data without changing its
 format.  An example is encrypting a 16-digit credit card number
 as 16 digits.  The encryption uses a key, which is secret, and an
diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/fpe.cabal b/fpe.cabal
--- a/fpe.cabal
+++ b/fpe.cabal
@@ -1,17 +1,18 @@
 cabal-version: 1.18
 
--- This file has been generated from package.yaml by hpack version 0.31.1.
+-- This file has been generated from package.yaml by hpack version 0.35.2.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: e71c8a5c25b6f4d91367a858231df53931e152636540804b099f15ac62d85392
+-- hash: 7c1d4de3459a0ae08db6ac62316d35c53b83835bd66b402d61fc598469099456
 
 name:           fpe
-version:        0.1.1
+version:        0.1.2
 synopsis:       Format-preserving encryption.
 category:       Cryptography
 homepage:       https://github.com/galenhuntington/fpe#readme
 bug-reports:    https://github.com/galenhuntington/fpe/issues
+author:         Galen Huntington
 maintainer:     Galen Huntington
 license:        MIT
 license-file:   LICENSE
@@ -29,14 +30,16 @@
   other-modules:
       Paths_fpe
   hs-source-dirs:
-      ./.
-  default-extensions: TypeApplications ScopedTypeVariables
+      ./
+  default-extensions:
+      TypeApplications
+      ScopedTypeVariables
   ghc-options: -Wall -Wredundant-constraints -Wno-name-shadowing -Wno-missing-signatures -Wno-unused-do-bind -Wno-orphans -Wcompat
   build-depends:
       base >=4.9 && <5
-    , bytestring >=0.10 && <0.11
+    , bytestring >=0.10 && <0.13
     , integer-logarithms >=1 && <1.1
-    , vector >=0.12 && <0.13
+    , vector >=0.12 && <0.14
   default-language: Haskell2010
 
 test-suite suite
@@ -46,13 +49,15 @@
       FPE.FF1
       Paths_fpe
   hs-source-dirs:
-      ./.
-  default-extensions: TypeApplications ScopedTypeVariables
+      ./
+  default-extensions:
+      TypeApplications
+      ScopedTypeVariables
   ghc-options: -Wall -Wredundant-constraints -Wno-name-shadowing -Wno-missing-signatures -Wno-unused-do-bind -Wno-orphans -Wcompat
   build-depends:
       base >=4.9 && <5
-    , bytestring >=0.10 && <0.11
+    , bytestring >=0.10 && <0.13
     , cryptonite
     , integer-logarithms >=1 && <1.1
-    , vector >=0.12 && <0.13
+    , vector >=0.12 && <0.14
   default-language: Haskell2010
