diff --git a/src/Test/Serialization/Symbiote.hs b/src/Test/Serialization/Symbiote.hs
--- a/src/Test/Serialization/Symbiote.hs
+++ b/src/Test/Serialization/Symbiote.hs
@@ -95,6 +95,7 @@
 import Data.Map (Map)
 import qualified Data.Map as Map
 import qualified Data.Set as Set
+import Data.Int (Int32)
 import Data.Text (unpack)
 import Data.Proxy (Proxy (..))
 import Data.Aeson (ToJSON (..), FromJSON (..), (.=), object, (.:), Value (Object, String))
@@ -145,7 +146,7 @@
          => Eq o
          => MonadIO m
          => Topic
-         -> Int -- ^ Max size
+         -> Int32 -- ^ Max size
          -> Proxy a -- ^ Reference to datatype
          -> SymbioteT s m ()
 register t maxSize Proxy = do
@@ -262,7 +263,7 @@
 
 -- | Messages sent by the first peer
 data First s
-  = AvailableTopics (Map Topic Int) -- ^ Mapping of topics to their gen size
+  = AvailableTopics (Map Topic Int32) -- ^ Mapping of topics to their gen size
   | FirstGenerating
     { firstGeneratingTopic :: Topic
     , firstGenerating :: Generating s
@@ -320,7 +321,7 @@
 
 -- | Messages sent by the second peer
 data Second s
-  = BadTopics (Map Topic Int)
+  = BadTopics (Map Topic Int32)
   | Start
   | SecondOperating
     { secondOperatingTopic :: Topic
@@ -386,8 +387,8 @@
 
 data Failure them s
   = BadTopicsFailure
-    { badTopicsFirst :: Map Topic Int
-    , badTopicsSecond :: Map Topic Int
+    { badTopicsFirst :: Map Topic Int32
+    , badTopicsSecond :: Map Topic Int32
     }
   | OutOfSyncFirst (First s)
   | OutOfSyncSecond (Second s)
diff --git a/src/Test/Serialization/Symbiote/Core.hs b/src/Test/Serialization/Symbiote/Core.hs
--- a/src/Test/Serialization/Symbiote/Core.hs
+++ b/src/Test/Serialization/Symbiote/Core.hs
@@ -26,6 +26,7 @@
 import Data.String (IsString)
 import Data.Map (Map)
 import qualified Data.Map as Map
+import Data.Int (Int32)
 import Data.Proxy (Proxy (..))
 import Data.Aeson (ToJSON, FromJSON, ToJSONKey, FromJSONKey)
 import Data.Serialize (Serialize)
@@ -75,7 +76,7 @@
 
 -- | Protocol generation state
 data SymbioteGeneration a s = SymbioteGeneration
-  { size     :: Int
+  { size     :: Int32
   , protocol :: SymbioteProtocol a s
   }
 
@@ -92,7 +93,7 @@
   { generate   :: Gen a
   , generateOp :: Gen (Operation a)
   , equal      :: o -> o -> Bool
-  , maxSize    :: Int
+  , maxSize    :: Int32
   , generation :: TVar (SymbioteGeneration a s)
   , encode'    :: a -> s
   , encodeOut' :: o -> s
@@ -139,7 +140,7 @@
     then pure DoneGenerating
     else do
       let genResize :: forall q. Gen q -> m q
-          genResize = liftIO . QC.generate . resize size
+          genResize = liftIO . QC.generate . resize (fromIntegral size)
       generatedValue <- encode <$> genResize generate
       generatedOperation <- encodeOp <$> genResize generateOp
       pure GeneratedSymbiote{generatedValue,generatedOperation}
diff --git a/symbiote.cabal b/symbiote.cabal
--- a/symbiote.cabal
+++ b/symbiote.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 7e699fac6570783c54c6e19f435bab91f0c954666e5cf2cbf1c2190942ff8278
+-- hash: 25783954120aa1f2248704db9140a112893ef6810db416a5c6725e34df0edc76
 
 name:           symbiote
-version:        0.0.1
+version:        0.0.1.1
 synopsis:       Data serialization, communication, and operation verification implementation
 description:    Please see the README on GitHub at <https://github.com/athanclark/symbiote#readme>
 category:       Data, Testing
