   end
 
   defp encode_query_value(type, value) do
-    result = encode_value(type, value)
-    [<<IO.iodata_length(result)::32>>, result]
+    acc = encode_value(type, value)
+    [<<IO.iodata_length(acc)::32>>, acc]
   end
 
   defp encode_value(:ascii, ascii) when is_binary(ascii) do

    end
  end

  defp encode_bound_values([], [], result) do
    result
  end

  defp encode_bound_values([column | columns], [value | values], result) do
    {_keyspace, _table, _name, type} = column
    result = [result | encode_query_value(type, value)]
    encode_bound_values(columns, values, result)
  end

  defp encode_query_value({type, value}) when is_binary(type) do

  defp new_page(%Prepared{result_columns: result_columns}),
    do: %Page{columns: result_columns}

  defp decode_change_options(<<buffer::bits>>, "KEYSPACE") do
    decode_string(keyspace <- buffer)
    <<>> = buffer
    %{keyspace: keyspace}
  end

  defp decode_change_options(<<buffer::bits>>, target) when target in ["TABLE", "TYPE"] do
    decode_string(keyspace <- buffer)
    decode_string(subject <- buffer)
    <<>> = buffer
    %{keyspace: keyspace, subject: subject}
  end

  defp decode_metadata(<<flags::4-bytes, column_count::32-signed, buffer::bits>>, page) do
    <<_::29, no_metadata::1, has_more_pages::1, global_table_spec::1>> = flags
    {page, buffer} = decode_paging_state(buffer, page, has_more_pages)

