diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,15 @@
 Changelog
 =========
 
+Version 0.1.0.2
+---------------
+
+*Jan 21, 2018*
+
+<https://github.com/mstksg/hamilton/releases/tag/v0.1.0.2>
+
+*   Compatibility with *typelits-witneses-0.3.0.0*
+
 Version 0.1.0.1
 ---------------
 
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -73,7 +73,7 @@
 [example runner]: https://github.com/mstksg/hamilton/blob/master/app/Examples.hs
 [user guide]: https://github.com/mstksg/hamilton#example-app-runner
 
-### Full Exmaple
+### Full Example
 
 Let's turn our double pendulum (with the second pendulum half as long) into an
 actual running program.  Let's say that `g = 5`, `m1 = 1`, and `m2 = 2`.
diff --git a/hamilton.cabal b/hamilton.cabal
--- a/hamilton.cabal
+++ b/hamilton.cabal
@@ -1,5 +1,5 @@
 name:                hamilton
-version:             0.1.0.1
+version:             0.1.0.2
 synopsis:            Physics on generalized coordinate systems using Hamiltonian Mechanics and AD
 description:         See README.md (or read online at <https://github.com/mstksg/hamilton#readme>)
 homepage:            https://github.com/mstksg/hamilton
@@ -24,7 +24,7 @@
                      , free
                      , hmatrix >= 0.18
                      , hmatrix-gsl >= 0.18
-                     , typelits-witnesses
+                     , typelits-witnesses >= 0.2.3
                      , vector-sized >= 0.6
   ghc-options:         -Wall -O2
   default-language:    Haskell2010
diff --git a/src/Numeric/Hamilton.hs b/src/Numeric/Hamilton.hs
--- a/src/Numeric/Hamilton.hs
+++ b/src/Numeric/Hamilton.hs
@@ -428,11 +428,11 @@
     -> [Phase n]
 evolveHam' _ _ [] = []
 evolveHam' s p0 ts = V.withSizedList (toList ts') $ \(v :: V.Vector s Double) ->
-                       case (Proxy %<=? Proxy) :: (2 :<=? s) of
+                       case Proxy @2 %<=? Proxy @s of
                          LE Refl -> (if l1 then tail else id)
                                   . toList
                                   $ evolveHam s p0 v
-                         NLE Refl -> error "evolveHam': Internal error"
+                         NLE{}   -> error "evolveHam': Internal error"
   where
     (l1, ts') = case ts of
       [x] -> (True , [0,x])
