diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,21 +1,30 @@
-MIT License
+Copyright John Ky (c) 2016
 
-Copyright (c) 2016 John Ky
+All rights reserved.
 
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
 
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
 
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+
+    * Neither the name of Author name here nor the names of other
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,9 +1,4 @@
-# hw-rankselect
-[![0.0-branch](https://circleci.com/gh/haskell-works/hw-rankselect/tree/0.0-branch.svg?style=svg)](https://circleci.com/gh/haskell-works/hw-rankselect/tree/0.0-branch)
+# hw-rankselect-base
+[![0.0-branch](https://circleci.com/gh/haskell-works/hw-rankselect-base/tree/0.0-branch.svg?style=svg)](https://circleci.com/gh/haskell-works/hw-rankselect-base/tree/0.0-branch)
 
 Rank and select operations.
-
-```
-cabal repl hw-rankselect-test
-λ> :trace main
-```
diff --git a/bench/Main.hs b/bench/Main.hs
new file mode 100644
--- /dev/null
+++ b/bench/Main.hs
@@ -0,0 +1,23 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+module Main where
+
+import           Criterion.Main
+import qualified Data.Vector.Storable                                   as DVS
+import           Data.Word
+import           HaskellWorks.Data.RankSelect.Base
+
+setupEnvVector :: Int -> IO (DVS.Vector Word64)
+setupEnvVector n = return $ DVS.fromList (take n (cycle [maxBound, 0]))
+
+benchRankSelect :: [Benchmark]
+benchRankSelect =
+  [ env (setupEnvVector 1000000) $ \bv -> bgroup "Rank"
+    [ bench "Rank - Once"   (whnf (rank1    bv) 1)
+    , bench "Select - Once" (whnf (select1  bv) 1)
+    , bench "Rank - Many"   (nf   (map (rank1 bv)) [0, 1000..10000000])
+    ]
+  ]
+
+main :: IO ()
+main = defaultMain benchRankSelect
diff --git a/hw-rankselect-base.cabal b/hw-rankselect-base.cabal
--- a/hw-rankselect-base.cabal
+++ b/hw-rankselect-base.cabal
@@ -1,14 +1,14 @@
 name:                   hw-rankselect-base
-version:                0.1.0.0
-synopsis:               Conduits for tokenizing streams.
+version:                0.2.0.0
+synopsis:               Rank-select base
 description:            Please see README.md
 homepage:               http://github.com/haskell-works/hw-rankselect-base#readme
-license:                MIT
+license:                BSD3
 license-file:           LICENSE
 author:                 John Ky
 maintainer:             newhoggy@gmail.com
 copyright:              2016 John Ky
-category:               Data, Conduit
+category:               Data
 build-type:             Simple
 extra-source-files:     README.md
 cabal-version:          >= 1.22
@@ -23,8 +23,9 @@
                       , HaskellWorks.Data.RankSelect.Base.Select0
                       , HaskellWorks.Data.RankSelect.Base.Select1
   build-depends:        base                          >= 4          && < 5
-                      , hw-bits                       >= 0.3.0.0
-                      , hw-prim                       >= 0.3.0.5
+                      , hw-bits                       >= 0.4.0.0
+                      , hw-int                        >= 0.0.0.1
+                      , hw-prim                       >= 0.4.0.0
                       , hw-string-parse               >= 0.0.0.2
                       , safe
                       , vector
@@ -43,8 +44,8 @@
 
   build-depends:        base                          >= 4          && < 5
                       , hspec
-                      , hw-bits                       >= 0.3.0.0
-                      , hw-prim                       >= 0.3.0.5
+                      , hw-bits                       >= 0.4.0.0
+                      , hw-prim                       >= 0.4.0.0
                       , hw-rankselect-base
                       , QuickCheck
                       , vector
@@ -54,3 +55,16 @@
 source-repository head
   type:     git
   location: https://github.com/haskell-works/hw-rankselect-base
+
+benchmark bench
+    Type: exitcode-stdio-1.0
+    HS-Source-Dirs: bench
+    Main-Is: Main.hs
+    GHC-Options: -O2 -Wall -msse4.2
+    Default-Language: Haskell2010
+    Build-Depends:      base                          >= 4          && < 5
+                      , criterion
+                      , hw-bits                       >= 0.4.0.0
+                      , hw-prim                       >= 0.4.0.0
+                      , hw-rankselect-base
+                      , vector
diff --git a/src/HaskellWorks/Data/RankSelect/Base/Rank1.hs b/src/HaskellWorks/Data/RankSelect/Base/Rank1.hs
--- a/src/HaskellWorks/Data/RankSelect/Base/Rank1.hs
+++ b/src/HaskellWorks/Data/RankSelect/Base/Rank1.hs
@@ -14,8 +14,8 @@
 import           HaskellWorks.Data.Bits.BitWise
 import           HaskellWorks.Data.Bits.ElemFixedBitSize
 import           HaskellWorks.Data.Bits.PopCount.PopCount1
+import           HaskellWorks.Data.Int.Widen.Widen64
 import           HaskellWorks.Data.Positioning
-import           HaskellWorks.Data.Widen.Widen64
 import           Prelude                                   as P
 
 {-# ANN module ("HLint: Ignore Reduce duplication"  :: String) #-}
diff --git a/src/HaskellWorks/Data/RankSelect/Base/Select1.hs b/src/HaskellWorks/Data/RankSelect/Base/Select1.hs
--- a/src/HaskellWorks/Data/RankSelect/Base/Select1.hs
+++ b/src/HaskellWorks/Data/RankSelect/Base/Select1.hs
@@ -14,7 +14,7 @@
 import           HaskellWorks.Data.Bits.BitWise
 import           HaskellWorks.Data.Bits.ElemFixedBitSize
 import           HaskellWorks.Data.Bits.PopCount.PopCount1
-import           HaskellWorks.Data.Narrow
+import           HaskellWorks.Data.Int.Narrow
 import           HaskellWorks.Data.Positioning
 import           Prelude                                   as P
 
