-bitVect *newBitVect (int);
-bitVect *bitVectResize (bitVect *, int );
-bitVect *bitVectSetBit (bitVect *,int );
-void bitVectUnSetBit (bitVect *,int);
-int bitVectBitValue (bitVect *,int);
-bitVect *bitVectUnion (bitVect *,bitVect *);
-bitVect *bitVectIntersect (bitVect *,bitVect *);
-int bitVectBitsInCommon ( bitVect *, bitVect * );
-bitVect *bitVectCplAnd ( bitVect *, bitVect *);
-int bitVectEqual (bitVect *,bitVect *);
-bitVect *bitVectCopy (bitVect *);
-int bitVectIsZero (bitVect *);
-int bitVectnBitsOn(bitVect *);
-int bitVectFirstBit (bitVect *);
-void bitVectDebugOn (bitVect *, FILE *);
+bitVect *newBitVect (int);
+void freeBitVect (bitVect *);
+bitVect *bitVectResize (bitVect *, int);
+bitVect *bitVectSetBit (bitVect *, int);
+void bitVectUnSetBit (bitVect *, int);
+int bitVectBitValue (bitVect *, int);
+bitVect *bitVectUnion (bitVect *, bitVect *);
+bitVect *bitVectIntersect (bitVect *, bitVect *);
+int bitVectBitsInCommon (bitVect *, bitVect *);
+bitVect *bitVectCplAnd (bitVect *, bitVect *);
+int bitVectEqual (bitVect *, bitVect *);
+bitVect *bitVectCopy (bitVect *);
+int bitVectIsZero (bitVect *);
+int bitVectnBitsOn (bitVect *);
+int bitVectFirstBit (bitVect *);
+void bitVectDebugOn (bitVect *, FILE *);