@Override
    public void put( ByteBuffer out, boolean[] v )
    {
        if (v == null)
        {
            out.put( Compress.NULL );
        }
        else
        {
            Compress.putIntUnsignedNullable( out, v.length );
            byte[] bytes = new byte[toBytes( v.length )];

            for (int i = 0; i < v.length; i++)
            {
                if (v[i])
                {
                    bytes[i >> 3] |= (1 << (i & 7));
                }
            }
        }
    }