still bugs : buffer overflow