diff --git a/Data/ASN1/BinaryEncoding/Raw.hs b/Data/ASN1/BinaryEncoding/Raw.hs
new file mode 100644
--- /dev/null
+++ b/Data/ASN1/BinaryEncoding/Raw.hs
@@ -0,0 +1,31 @@
+-- |
+-- Module      : Data.ASN1.BinaryEncoding.Raw
+-- License     : BSD-style
+-- Maintainer  : Vincent Hanquez <vincent@snarc.org>
+-- Stability   : experimental
+-- Portability : unknown
+--
+-- Raw encoding of binary format (BER/DER/CER)
+--
+module Data.ASN1.BinaryEncoding.Raw
+    (
+    -- * types
+      ASN1Header(..)
+    , ASN1Class(..)
+    , ASN1Tag
+    , ASN1Length(..)
+    , ASN1Event(..)
+
+    -- * parser
+    , parseLBS
+    , parseBS
+
+    -- * writer
+    , toLazyByteString
+    , toByteString
+
+    ) where
+
+import Data.ASN1.BinaryEncoding.Parse
+import Data.ASN1.BinaryEncoding.Writer
+import Data.ASN1.Types
diff --git a/Data/ASN1/BinaryEncoding/Writer.hs b/Data/ASN1/BinaryEncoding/Writer.hs
--- a/Data/ASN1/BinaryEncoding/Writer.hs
+++ b/Data/ASN1/BinaryEncoding/Writer.hs
@@ -27,7 +27,7 @@
 toLazyByteString :: [ASN1Event] -> L.ByteString
 toLazyByteString evs = L.fromChunks $ loop [] evs
     where loop _ [] = []
-          loop acc (x@(Header (ASN1Header _ _ pc len)):xs) = toBs x : loop (if pc && len == LenIndefinite then True:acc else acc) xs
+          loop acc (x@(Header (ASN1Header _ _ pc len)):xs) = toBs x : loop (if pc then (len == LenIndefinite):acc else acc) xs
           loop acc (ConstructionEnd:xs) = case acc of
                                               []        -> error "malformed stream: end before construction"
                                               (True:r)  -> toBs ConstructionEnd : loop r xs
diff --git a/Tests.hs b/Tests.hs
--- a/Tests.hs
+++ b/Tests.hs
@@ -45,7 +45,7 @@
 arbitraryDefiniteLength = arbitrary `suchThat` (\l -> l /= LenIndefinite)
 
 arbitraryTag :: Gen ASN1Tag
-arbitraryTag = choose(0,10000)
+arbitraryTag = choose(1,10000)
 
 instance Arbitrary ASN1Header where
         arbitrary = liftM4 ASN1Header arbitrary arbitraryTag arbitrary arbitrary
diff --git a/asn1-data.cabal b/asn1-data.cabal
--- a/asn1-data.cabal
+++ b/asn1-data.cabal
@@ -1,5 +1,5 @@
 Name:                asn1-data
-Version:             0.7.0
+Version:             0.7.1
 Description:
     ASN1 data reader and writer in raw form with supports for high level forms of ASN1 (BER, and DER).
 License:             BSD3
@@ -30,6 +30,7 @@
   Exposed-modules:   Data.ASN1.BitArray
                      Data.ASN1.Types
                      Data.ASN1.BinaryEncoding
+                     Data.ASN1.BinaryEncoding.Raw
                      Data.ASN1.Encoding
                      Data.ASN1.Stream
                      Data.ASN1.Parse
